2023-03-28 编写脚本实现将 csv 文件的内容录入到 MySQL 数据库中。day25作业二

要求:自己创建一个自增列作为主键(不要用csv文件中的第一列作为主键)。

import pymysql

# 连接MySQL
conn = pymysql.connect(host="127.0.0.1", port=3306, user="root", password="123456", charset="utf8", db='userdb')
cursor = conn.cursor()  # 使用 cursor() 方法创建一个游标对象

# sql = """
# create table userdb(
#     id int not null primary key auto_increment,
#     user_id int not null,
#     username varchar(64) not null,
#     url varchar(64)
# )default charset=utf8;
# """
# cursor.execute(sql)
# conn.commit()
sql = "alter table userdb modify column url varchar(255);"
cursor.execute(sql)
conn.commit()

with open('db.csv', mode='r', encoding='utf-8') as file_object:
    # file_object.readline() #第一行不要
    for line in file_object:  # 从第二行开始
        user_id, username, url = line.strip().split(',')
        sql = "insert into userdb(user_id,username,url) values('{}','{}','{}')".format(user_id, username, url)
        cursor.execute(sql)
        conn.commit()

# sql = """select * from user_info;"""
# cursor.execute(sql)
# conn.commit()
# result = cursor.fetchall()
# print(result)
# 关闭数据库连接
cursor.close()
conn.close()
d367eedc775bd6ee5a81570e6affdb7.png

两边传递的值个数不太一样
数目不匹配

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、数据库知识(通用)篇 1.说说主键、外键、超键、候选键 超键:在关系中能唯一标识元组的属性集称为关系模式的超键...
    朝夕Net社区阅读 5,883评论 1 1
  • 一、基本概念 1.主键、外键、超键、候选键 超键:在关系中能唯一标识元组的属性集称为关系模式的超键。一个属性可以为...
    叫我老村长阅读 3,587评论 0 6
  • 一、性能相关 1 导致索引失效 不符合左前缀匹配原则mysql 会一直向右匹配直到遇到范围查询(>,<,betwe...
    格林哈阅读 1,553评论 0 1
  • 索引 数据库中的查询操作非常普遍,索引就是提升查找速度的一种手段 索引的类型 从数据结构角度分 1.B+索引:传统...
    一凡呀阅读 8,139评论 0 8
  • 这周我们学习了数据库中表的操作,现在我们来整理一下怎样操作吧! 首先我们得使用CREATE TABLE语句创建新的...
    爽爽ing阅读 3,570评论 0 0