python-22 MySQL操作
原创
©著作权归作者所有:来自51CTO博客作者DUT_LYH的原创作品,请联系作者获取转载授权,否则将追究法律责任
MySQL
mysql-connector
MySQL官网提供
#测试
import mysql.connector
#安装
python -m pip install mysql-connector
import mysql.connector
#连接
mydb = mysql.connector.connect(host='localhost',user='root',passwd='root')
print(mydb)
#查看数据库
mycursor = mydb.cursor()
mycursor.execute('SHOW DATABASE')
for x in mycursor:
print(x)
#创建数据库
mycursor = mydb.cursor()
mycursor.execute('CREATE DATABASE runoob_db')
mydb.commit()
mydb.close()
import mysql.connector
#直接打开指定数据库
mydb = mysql.connector.connect(host='localhost',user='root',passwd='root',database='runoob_db')
mycursor = mydb.cursor()
sql = '建表语句/修改语句/删除表'
mycursor.execute('建表语句/修改语句/删除表')
mycursor.execute(sql)
#习惯性将关键字大写
mycursor.execute('DROP TABLE IP EXISTS sites')
#占位符
sql = '(%s,%s)'
val = ('','')
mycursor.execute(sql,val)
#获取所有记录
mycursor.execute('查询语句')
myresult = mycursor.fetchall()
for x in myresult:
print(x)
#获取第一条记录
mycursor.execute('查询语句')
myresult = mycursor.fetchone()
print(myresult)
#模糊查询
sql = 'SELECT name FROM sites WHERE name LIKE %s '
val = ('%oo%',)
mycursor.execute(sql,val)
#limit 查询量的设置
sql = 'SELECT name FROM sites limit 2 '
mycursor.execute(sql)
#offset 设置开始位置
sql = ' SELECT name FROM sites LIMIT 3 OFFSET 1 '
mydb.commit()
mydb.close()
PyMySQL
Python3中专用于连接MySQL数据库的库
Python2是mysqldb
import pymysql
#连接
db = pymysql.connect("localhost",'root','root','testdb')
cursor = db.cursor()
cursor.execute('语句')
#预处理 '\'分行
sql = """ \
\
"""
cursor.execute(sql)
db.commit()
db.close()
# try except