环境
方式一
我们可以通过命令行来完成pymysql这个库的安装.
pip3 install pymysql
方式二
在PyCharm中完成pymysql库的安装。
最后,完成安装即可。
数据库连接
数据库创建
通过图像化界面,建立连接,在连接中创建数据库,在数据库当中在建立起相应的表。
注释,可以帮助理解内容
import pymysql # 导入pymysql这个库
try:
# 打开数据库连接
db = pymysql.connect(host='localhost', # 连接名称
user='root', # 用户名称
password='', # 密码
database='') # 数据库名称
print('数据库连接成功') # 给出提示
except Exception as e: # 捕获异常
# 如果发生错误则回滚
db.rollback()
print('出错了')
print(e)
# 关闭数据库连接
db.close()
创建一张表
注释,可以帮助理解内容
import pymysql
# 打开数据库连接
db = pymysql.connect(host='localhost', # 连接名称
user='root', # 用户名称
password='', # 密码
database='') # 数据库名称
print('数据库连接成功')
# 使用cursor()方法获取操作游标
cursor = db.cursor()
# 使用 execute() 方法执行 SQL,如果表存在则删除
cursor.execute("DROP TABLE IF EXISTS EMPLOYEE")
# SQL 插入语句
sql = """CREATE TABLE EMPLOYEE (
FIRST_NAME CHAR(20) NOT NULL,
LAST_NAME CHAR(20),
AGE INT,
SEX CHAR(1),
INCOME FLOAT )""" #这里可以写要创建的表名,表下面的一些字段,每个字段的数据类型
try:
# 执行sql语句
cursor.execute(sql)
except Exception as e:
# 如果发生错误则回滚
db.rollback()
print('创建表失败')
print(e)
# 关闭数据库连接
db.close()
插入数据
注释,可以帮助理解内容
import pymysql
# 打开数据库连接
db = pymysql.connect(host='localhost',
user='root',
password='',
database='')
print('数据库连接成功')
# 使用cursor()方法获取操作游标
cursor = db.cursor()
# SQL 插入语句,主要的标识是insert,可以将字段名和相应的值一一的对应起来。
sql = """insert into 表名(字段1,字段2, 字段3,.....) values ('值1','值2','值3'....)"""
try:
# 执行sql语句
cursor.execute(sql)
# 提交到数据库执行
db.commit()
print('数据插入成功')
except Exception as e:
# 如果发生错误则回滚
db.rollback()
print('出错了')
print(e)
# 关闭数据库连接
db.close()
查询表中的数据
注释,可以帮助理解内容
查询EMPLOYEE表中salary(工资)字段大于1000的所有数据
import pymysql
# 打开数据库连接
db = pymysql.connect(host='localhost',
user='root',
password='',
database='')
# 使用cursor()方法获取操作游标
cursor = db.cursor()
# SQL 查询语句,主要的标识是selelct,* 表示查询这个表中所有字段的数据,where后面则是对查询数据的一个限定条件,我们也可以只查询个别字段的数据内容。
sql = "SELECT * FROM EMPLOYEE \
WHERE INCOME > %s" % (1000)
try:
# 执行SQL语句
cursor.execute(sql)
# 获取所有记录列表
results = cursor.fetchall()
# 通过循环的方式,将每一个字段的结果输入到数组中
for row in results:
fname = row[0]
lname = row[1]
age = row[2]
sex = row[3]
income = row[4]
# 打印结果
print ("fname=%s,lname=%s,age=%s,sex=%s,income=%s" % \
(fname, lname, age, sex, income ))
except:
print ("Error: unable to fetch data")
# 报错标识
# 关闭数据库连接
db.close()
更新表中数据
注释,可以帮助理解内容
#SEX 为 'M' 的 AGE 字段递增 1
import pymysql
# 打开数据库连接
db = pymysql.connect(host='localhost',
user='root',
password='',
database='')
# 使用cursor()方法获取操作游标
cursor = db.cursor()
# SQL 更新语句,主要的标识是update、set,修改相应表中的数据,可以给要修改的字段赋予新的值。
sql = "UPDATE EMPLOYEE SET AGE = AGE + 1 WHERE SEX = '%c'" % ('M')
try:
# 执行SQL语句
cursor.execute(sql)
# 提交到数据库执行
db.commit()
except:
# 发生错误时回滚
db.rollback()
# 关闭数据库连接
db.close()
删除表中数据
注释,可以帮助理解内容
# 删除数据表 EMPLOYEE 中 AGE 大于 20 的所有数据
import pymysql
# 打开数据库连接
db = pymysql.connect(host='localhost',
user='testuser',
password='test123',
database='TESTDB')
# 使用cursor()方法获取操作游标
cursor = db.cursor()
# SQL 删除语句,主要的标识是delete,设定一些要删除的限制条件
sql = "DELETE FROM EMPLOYEE WHERE AGE > %s" % (20)
try:
# 执行SQL语句
cursor.execute(sql)
# 提交修改
db.commit()
except:
# 发生错误时回滚
db.rollback()
# 关闭连接
db.close()
删除一张表
注释,可以帮助理解内容
import pymysql
#如果sql语句中的表存在,就将其删除掉
# 打开数据库连接
db = pymysql.connect(host='localhost',
user='root',
password='baizhihao',
database='pymysql')
print('数据库连接成功')
# 使用cursor()方法获取操作游标
cursor = db.cursor()
# SQL 删除语句,这里的标识是drop
sql = """DROP TABLE IF EXISTS EMPLOYEE"""
try:
# 执行sql语句
cursor.execute(sql)
except Exception as e:
# 如果发生错误则回滚
db.rollback()
print('创建表失败')
print(e)
# 关闭数据库连接
db.close()