基本操作
环境安装
1. 社区mysql下载:https://dev.mysql.com/downloads/mysql/
2. 安装好python后,安装pymysql,下面方法是使用pip安装pymysql:
pip install pymysql
下面演示如何建立数据库连接:
import pymysql
# 创建数据库连接
conn = pymysql.connect(
host='127.0.0.1', # 目标数据库主机的地址
user='root', # 数据库用户名
passwd='123456', # 数据库密码
db=db_name, # 数据库名字
charset='UTF8' # 编码格式,这个很重要,不然会导致中文乱码
)
cur = conn.cursor() # 获取游标
# 进行相关数据库的操作
sql_str = "insert into table_name (user,pwd) values ({0},{1});" # 使用了占位符,详情见下文
.format("hey","key"))
cur.execute(sql_str)
..................
# 数据库操作结束
cur.close() # 关闭游标
conn.commit() # 提交事务,不提交的话,上面操作没用的哦
conn.close() # 关闭到数据库的连接,释放数据库资源
异常处理
在进行数据库增删该查的时候,会出现不同的异常,下面介绍常见的两种异常的捕获,第一种的语法错误的异常,第二种是主键冲突异常。
try:
sql_str = "insert into....."
cur.execute(sql_str)
except(pymysql.err.ProgrammingError):
# 捕获由于sql语句错误抛出的异常
# 捕获后的操作
except(pymysql.err.IntegrityError):
# 捕获主键冲突
# 捕获后的相关操作
python 占位符
利用占位符,方便我们合成sql语句,而不需要使用字符串的操作,使得代码写起来方便,读起来直观,具体使用自带的format函数实现,有三种不同的写法
1. 使用’{}’形式的占位符
print('My name is {}'.format('HL'))
# result: My name is HL
2. 也可以使用’{0}’,’{1}’形式的占位符
print('I am a boy {0} and like {1}.'.format('boy','girls'))
# result: I am a boy boy and like girls
3. 使用’{name}’形式的占位符
print('Hey!{name}'.format(name = 'Jack'))
# result: Hey!Jack