首页 > 数据库技术 > 详细

python操作mysql

时间:2020-03-20 19:27:50      阅读:57      评论:0      收藏:0      [点我收藏+]

1、单条数据操作

import pandas as pd
import pymysql

db_230w= {
    host: 192.168.0.222,  # 服务器地址
    port: 3306,  # 端口号
    user: root,  # 用户名
    password: 12345678,  # 密码
    db: database,  # 数据库
    charset: utf8mb4}  # 编码


conn = pymysql.connect(**db_230w)  # 连接数据库
cursor = conn.cursor()  # 生成游标,通过指针操作mysql
curs_sql = fselect * from tb_name where id_name="{id_name}"  #  sql语句。
try:
    cursor.execute(curs_sql)  # 执行sql语句
except:
    conn.rollback()  # 如果发生异常,就回滚
conn.commit()  # 提交事务
cursor.close()  # 关闭游标
conn.close()  # 关闭数据库连接

注:此方法可能存在转义问题,比如数据种存在单双引号等,可能使得sql语句引号混乱发生冲突,所以如果所筛选的字段数据中带有引号,最好在字符串引号前面加上\\\三个转义符。

 

2、多条数据操作

此方法不存在转义问题,内部机制会自行处理

import pandas as pd
import pymysql

db_230w= {
    host: 192.168.0.222,  # 服务器地址
    port: 3306,  # 端口号
    user: root,  # 用户名
    password: 12345678,  # 密码
    db: database,  # 数据库
    charset: utf8mb4}  # 编码


conn = pymysql.connect(**db_230w)  # 连接数据库
cursor = conn.cursor()  # 生成游标,通过指针操作mysql
sql = "update tb_name set g_rank=%s where name=%s"  # sql语句,此处数据用%s代替,与后面列表中数据是一一对应关系

try:
    cursor.executemany(sql, [(g_rank1, name1),(g_rank2, name2),(g_rank3, name3)......])  # 批量插入数据,与sql中%s是一一对应关系
except:
    conn.rollback()  # 如果发生异常,就回滚
conn.commit()  # 提交事务
cursor.close()  # 关闭游标
conn.close()  # 关闭数据库连接

 

python操作mysql

原文:https://www.cnblogs.com/jaysonteng/p/12533550.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!