在pycharm中用代码向mysql中已建好的表里填数据的问题。我是建了一个叫user的表,建表的代码如下
d = 'create table user(用户名 varchar(20),密码 char(20) ,真实姓名 varchar(20))';
cursor.execute(d)
然后我想在pycharm中用代码向这张叫做user的表里填入一些数据,就用了以下代码
d ="insert into user(用户名,密码,真实姓名) values({},{},'{}');"
真实姓名=['张三','里斯','里斯']
for j in range(len(真实姓名)):
cursor.execute(a.format(j,真实姓名[j]))
我想知道为什么我写了这些代码后为什么我mysql workbench里打开这张叫user的表,表里面却没有数据呢?
图片如下
试一试这样:
d = "insert into user(用户名,密码,真实姓名) values('{}','{}','{}')"
真实姓名 = ['张三', '里斯', '王五']
for name in 真实姓名:
cursor.execute(d.format(name, '123456', name))
新增修改数据最后要调用db.commit()方法
这个a改成d
发现有3个问题
举个例子:
# 添加一条数据数据
def insertdata1():
insert_emp_sql = "insert into user(用户名,密码,真实姓名) values ('123','123','张三')"
# 执行语句
cursor.execute(insert_emp_sql)
# 提交数据
conn.commit()
不知道你这个问题是否已经解决, 如果还没有解决的话:我可以提供以下代码作为插入数据的示例,建议你检查一下数据库连接、表名和字段名称是否正确。另外,你可以使用commit()方法提交插入操作,否则数据将不能被正确地写入数据库中。如果你已经做到了这些,但仍然无法插入数据,可以考虑输出错误信息来进行更深入的排查。
import pymysql
# 建立数据库连接
conn = pymysql.connect(
host='localhost',
user='root', password='password',
database='database_name',
charset='utf8mb4'
)
# 创建一个游标
cursor = conn.cursor()
# 执行插入数据的SQL语句
sql = "INSERT INTO `user` (`id`, `name`, `age`, `gender`) VALUES (NULL, '张三', 18, '男')"
cursor.execute(sql)
# 提交插入操作
conn.commit()
# 关闭游标和数据库连接
cursor.close()
conn.close()