mysql python pymysql模块 增删改查 插入数据 介绍 commit() execute() executemany() 函数

import pymysql



mysql_host = '192.168.0.106'
port = 3306
mysql_user = 'root'
mysql_pwd = '123'
encoding = 'utf8'

# 建立 连接mysql服务端

conn = pymysql.connect(
    host=mysql_host,  # mysql服务端ip
    port=port,  # mysql端口
    user=mysql_user,  # mysql 账号
    password=mysql_pwd,  # mysql服务端密码
    db='db10',  # 操作的库
    charset=encoding  # 读取字符串编码

)

# 拿到游标对象
cur = conn.cursor()

'''
游标是给mysql提交命令的接口
mysql> 
把sql语句传递到这里
'''


# 执行sql语句
# 增、删、改
sql= 'insert into userinfo(name,pwd) values(%s, %s); '


# 把sql语句传给游标执行
# 让游标execute去帮我拼接字符串
rows = cur.execute(sql,("alex", "555")) # #执行sql语句,返回sql查询成功的记录数目
print(rows)

# 想让insert 语句 插入数据库里面去需要加上这个
conn.commit()

# 执行完sql语句要关闭游标和mysql连接
cur.close()
conn.close()
execute(sql,()) 传入元祖形式

记得在关闭连接前,想让insert 语句 插入数据库里面去需要加上这个 ,增删改都要加上commit()

conn.commit()

执行脚本 返回1  代表插入1条记录 成功

查询新增一条记录

mysql> select * from userinfo;
+----+------+-----+
| id | name | pwd |
+----+------+-----+
|  1 | mike | 123 |
|  2 | jack | 456 |
|  3 | alex | 555 |
+----+------+-----+
3 rows in set (0.00 sec)
execute() 方法  每次只能插入一条记录


同时可以插多条记录
excutemany() 方法

用列表 把多个元祖括起来 可以传递多条记录, 一个元祖对应一条记录
rows = cur.executemany(sql,[(),(),()])


import pymysql



mysql_host = '192.168.0.106'
port = 3306
mysql_user = 'root'
mysql_pwd = '123'
encoding = 'utf8'

# 建立 连接mysql服务端

conn = pymysql.connect(
    host=mysql_host,  # mysql服务端ip
    port=port,  # mysql端口
    user=mysql_user,  # mysql 账号
    password=mysql_pwd,  # mysql服务端密码
    db='db10',  # 操作的库
    charset=encoding  # 读取字符串编码

)

# 拿到游标对象
cur = conn.cursor()

'''
游标是给mysql提交命令的接口
mysql> 
把sql语句传递到这里
'''


# 执行sql语句
# 插入数据
sql= 'insert into userinfo(name,pwd) values(%s, %s); '


# 把sql语句传给游标执行
# 让游标executemany去帮我拼接字符串
rows = cur.executemany(sql,[('peter','989'),('app','123'),('tom','556')])
print(rows)


# 想让insert 语句 插入数据库里面去需要加上这个
conn.commit()

# 执行完sql语句要关闭游标和mysql连接
cur.close()
conn.close()


返回3 代表插入3条记录 成功


mysql> select * from userinfo;
+----+-------+-----+
| id | name  | pwd |
+----+-------+-----+
|  1 | mike  | 123 |
|  2 | jack  | 456 |
|  3 | alex  | 555 |
|  4 | peter | 989 |
|  5 | app   | 123 |
|  6 | tom   | 556 |
+----+-------+-----+
6 rows in set (0.00 sec)


 
 
原文地址:https://www.cnblogs.com/mingerlcm/p/9932408.html