当前位置:首页 > Python教程 > python技巧

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


【说明】本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!