python中MySQL数据库连接、执行sql语句

引言

python 3.x版本中连接MySQL数据库使用第三方库PyMySQL;
python 2.x版本中连接MySQL数据库使用第三方库mysqldb;

PyMySQL安装

PyMySQL下载地址:https://github.com/PyMySQL/PyMySQL

1、cmd命令下

pip3 install PyMySQL -i http://pypi.douban.com/simple --trusted-host pypi.douban.com

使用豆瓣镜像源加快第三方库的安装速度。
2、git命令下

git clone https://github.com/PyMySQL/PyMySQL
cd PyMySQL/
python3 setup.py install

MySQL数据库连接

1、连接mysql,显示mysql版本

import pymysql

#打开数据库连接
db = pymysql.connect('localhost','root','password','mysql')

#创建游标对象
cursor = db.cursor()

#使用execute()方法执行sql语句
cursor.execute('select version()')

#fetchone()方法获取返回对象的单条数据
data = cursor.fetchone()
print('Database version:{0}'.format(data))

#关闭数据库连接
db.close()

2、创建表,往表中插入语句

import pymysql

#打开数据库连接
db = pymysql.connect('localhost','root','password','mysql')

#创建游标对象
cursor = db.cursor()

#sql预处理语句之创建表格
sql = """CREATE TABLE EMPLOYEE (
         NAME  CHAR(20),
         AGE INT,  
         SEX CHAR(1),
         INCOME FLOAT )"""

cursor.execute(sql)

#sql预处理语句之往表格中插入数据
sql = """INSERT INTO EMPLOYEE(NAME,
         AGE, SEX, INCOME)
         VALUES ('KING', 20, 'M', 5000)"""

cursor.execute(sql)

#提交到数据库执行,代表一个事务的结束
db.commit()

#关闭数据库
db.close()

3、查询操作
Python查询Mysql使用 fetchone() 方法获取单条数据, 使用fetchall() 方法获取全部返回对象。

import pymysql

#打开数据库连接
db = pymysql.connect('localhost','root','password','mysql')

#创建游标对象
cursor = db.cursor()

# Sql预处理语句之选择收入超过1000的记录
sql = """SELECT * FROM EMPLOYEE \
       WHERE INCOME > 1000"""

cursor.execute(sql)

# 获取所有记录列表
results = cursor.fetchall()

for i in results:
    name = i[0]
    age = i[1]
    sex = i[2]
    income = [3]
    print('name={0},age={1},sex={2},income={3}'.format(name,age,sex,income))

db.close()

你可能感兴趣的:(数据库)