标签:Python MySQL pymysql mycursor 插入 sql print mydb
目录
1.插入表格
要在 MySQL 中填充表,请使用“INSERT INTO”语句。
“stu”表中添加一条记录:
代码:
# coding=gbk
#连接
import pymysql
mydb = pymysql.connect(
host="localhost", #默认用主机名
port=3306,
user="root", #默认用户名
password="123456", #mysql密码
database='student', #库名
charset='utf8' #编码方式
)
print(mydb)
#创建表
mycursor = mydb.cursor()
#创建SQL语句
sql = "INSERT INTO stu (id,name, class) VALUES (%s, %s, %s)"
#编写填充内容
val = ('1','笨小孩','统计')
#执行上述内容
mycursor.execute(sql, val)
#提交上述内容
mydb.commit()
#打印
print(mycursor.rowcount, "添加表格成功.")
# # 关闭数据库
# mydb.close()
演示:
我们在navicat中看看未填充时情况
我们关闭该数据库,然后执行上述代码后
该内容证明我们执行成功了
2.插入多行
用数据填充“stu”表:
# coding=gbk
#连接
import pymysql
mydb = pymysql.connect(
host="localhost", #默认用主机名
port=3306,
user="root", #默认用户名
password="123456", #mysql密码
database='student', #库名
charset='utf8' #编码方式
)
print(mydb)
#创建表
mycursor = mydb.cursor()
#创建SQL语句
sql = "INSERT INTO stu (id,name, class) VALUES (%s, %s, %s)"
#编写多行填充内容
val = [
('2','喜羊羊','草原'),
('3','美羊羊','草原'),
('4','灰太狼','狼堡'),
('5','红太狼','狼堡')
]
#执行上述内容
mycursor.executemany(sql, val) #注意这里不再用execute
#提交上述内容
mydb.commit()
#打印
print(mycursor.rowcount, "添加表格成功.")
# # 关闭数据库
# mydb.close()
执行上述代码:
如果不存在这个表,会报错。
我在这里没有填入 age 选项内容,如果想要填充,在上面sql语句中添加上即可
3.获取插入的 ID
代码:
# coding=gbk
#连接
import pymysql
mydb = pymysql.connect(
host="localhost", #默认用主机名
port=3306,
user="root", #默认用户名
password="123456", #mysql密码
database='student', #库名
charset='utf8' #编码方式
)
print(mydb)
#创建表
mycursor = mydb.cursor()
#创建SQL语句
sql = "INSERT INTO stu (id,name, class) VALUES (%s, %s, %s)"
#编写多行填充内容
val = ('6','懒洋洋','羊村')
#执行上述内容
mycursor.execute(sql, val)
#提交上述内容
mydb.commit()
#打印
print("记录一个插入的id:", mycursor.lastrowid)
# # 关闭数据库
# mydb.close()
演示:
注意: 如果插入多行,则返回最后插入行的id。
标签:Python,MySQL,pymysql,mycursor,插入,sql,print,mydb 来源: https://blog.csdn.net/qq_25990967/article/details/121446132
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。