python_数据库连接之mysql
python远程连接数据库,需要安装对应得第三方模块,现以mysql为例,其他的同理
1、安装第三方库
pip install pymysql
2、数据库连接及关闭
备注:数据库连接后不关闭,会导致大量占用数据库连接池不释放,导致其他数据库连接无法连接到数据库
import pymysql #host 数据库服务IP地址 #user 数据库连接用户名 #password 数据库连接密码 #db 连接数据库名称 #port 数据库服务端口号 #charset 编码方式 #autocommit 自动提交,sql执行后直接自动提交,无需再次手动进行执行 conn=pymysql.Connect(host='host',user='user',password='password',db='db', port=3306, charset='utf8', autocommit=True) #数据库连接 cur=conn.cursor() #建立游标 cur.execute('select * from table') #执行sql #conn.commit() #手动提交sql执行结果 #cur.fetchone() #单条获取sql执行结果 cur.fetchall() #获取所有sql执行结果 #cur.fetchmany(10) #获取指定的10条执行结果 cur.close() #关闭游标 conn.close() #关闭数据库
3、插入
import pymysql #建立连接 conn=pymysql.connect(host='IP',user='jxz',password='123456',db='jxz',port=3306,charset='utf8',autocommit=True) cur =conn.cursor() #建立游标 sql="insert into acc_info VALUES(7,'dd3',123,1);" cur.execute(sql) print(cur.fetchall()) cur.close() conn.close() C:\Users\zhaow\AppData\Local\Programs\Python\Python37\python.exe D:/study/python/test/YY.PY.py () #返回的空元组
4、查询
import pymysql #建立连接 conn=pymysql.connect(host='IP',user='jxz',password='123456',db='jxz',port=3306,charset='utf8',autocommit=True) cur =conn.cursor() #建立游标 sql="SELECT * from acc_info;" cur.execute(sql) print(cur.fetchall()) cur.close() conn.close() C:\Users\zhaow\AppData\Local\Programs\Python\Python37\python.exe D:/study/python/test/YY.PY.py ((1, '55', 0, 0), (3, 'dd', 0, 0), (4, 'dd', 0, 0), (5, 'dd', 0, 0), (6, 'dd3', 0, 0), (7, 'dd3', 123, 1)) #返回的元组
5、修改
import pymysql #建立连接 conn=pymysql.connect(host='IP',user='jxz',password='123456',db='jxz',port=3306,charset='utf8',autocommit=True) cur =conn.cursor() #建立游标 sql="UPDATE acc_info set name='xiug' where id=5;" cur.execute(sql) print(cur.fetchall()) cur.close() conn.close() C:\Users\zhaow\AppData\Local\Programs\Python\Python37\python.exe D:/study/python/test/YY.PY.py () #返回空元组
6、删除
import pymysql #建立连接 conn=pymysql.connect(host='IP',user='jxz',password='123456',db='jxz',port=3306,charset='utf8',autocommit=True) cur =conn.cursor() #建立游标 sql="DELETE from acc_info where id=3" cur.execute(sql) print(cur.fetchall()) cur.close() conn.close() C:\Users\zhaow\AppData\Local\Programs\Python\Python37\python.exe D:/study/python/test/YY.PY.py ()
7、其他