python操作数据库

戏子无情 提交于 2019-12-03 02:15:02

一、python操作mysql数据库

       python3中操作mysql数据需要安装一个第三方模块,pymysql,使用pip install pymysql安装即可,在python2中是MySQLdb模块 

import pymysql

# 定义数据库的ip地址,账号、密码、端口号、要操作的数据库、字符集
ip = '111.11.1.11'
user = 'xxx'
password = '123456'
db = 'xxx'
port = 3306#默认端口号为3306,操作数据库端口号为默认值可以不传
charset = 'utf8' #数据库的字符集是utf8而不是utf-8

# 创建连接,指定数据库的ip地址,账号、密码、端口号、要操作的数据库、字符集
conn= pymysql.connect(host = ip,user = user,password = password,db = db,port = port ,charset = charset,autocommit=True) #增加autocommit=True参数,执行sql语句后自动提交

#创建游标
# cur= conn.cursor()
cur= conn.cursor(pymysql.cursors.DictCursor) #pymysql.cursors.DictCursor指定游标类型为字典类型

sql = 'select *from app_myuser limit 10;'

#执行sql语句
cur.execute(sql)

# 对数据库做了插入、修改、删除之后需要执行提交操作
# conn.commit()

# 获取sql语句的执行结果
one = cur.fetchone() #只能获取一条
many = cur.fetchmany(2) #传入参数决定获取数据条数
all = cur.fetchall() #获取所有数据

# 数据库使用完之后要将连接与游标都关闭
cur.close()#关游标
conn.close()#关连接
#操作数据库函数
def op_mysql(sql):
    db_info = {'user': 'jxz', 'password': '123456',
            'host': '118.24.3.40', 'db': 'jxz', 'port': 3306, 'charset': 'utf8',
            'autocommit': True}
    conn = pymysql.connect(**db_info)  # 建立连接
    cur = conn.cursor(pymysql.cursors.DictCursor)  # 游标
    cur.execute(sql)  # 执行sql语句,insert 、update 、delete
    result = cur.fetchall()
    cur.close()
    conn.close()
    return result

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!