Python基础之操作数据库

 1 #_author: liu.cao
 2 #date: 2018/7/14
 3 import pymysql
 4 
 5 #连接数据库
 6 db_ip='192.168.6.129'
 7 db_port=3306
 8 db_name='future'
 9 user='root'
10 password='123456'
11 
12 #开始连接数据库
13 conn=pymysql.Connect(db_ip,user,password,db_name,db_port,charset='utf8',cursorclass=pymysql.cursors.DictCursor)
14 #创建游标
15 cursor=conn.cursor()
16 
17 #查询sql语句
18 select_sql='select*from test'
19 rows=cursor.execute(select_sql)#影响的行
20 print(rows)
21 #result=cursor.fetchall()#查询结果接收,返回所有的行
22 result=cursor.fetchone()
23 print(result)#打印输出结果
24 
25 #添加数据
26 add_sql2={"name":"小明","sex":""}#用字典参数化
27 list_sql=["丢丢",""]#用列表参数化
28 add_list='insert into test(name,sex) values(%s,%s)'
29 #add_sql='insert into test(name,sex) values(%(name)s,%(sex)s)'
30 #add_sql='insert into test(name,sex) values("小简","女")'
31 try:
32     rows = cursor.execute(add_list, list_sql)
33     #rows = cursor.execute(add_sql,add_sql2)
34     #rows=cursor.execute(add_sql)
35     conn.commit()#提交数据
36 except:
37     conn.rollback()#提交失败,数据回滚
38 
39 
40 cursor.close()#游标也要关闭
41 conn.close()

 1.安装 PyMysql
--Python2中使用mysqldb,Python3中不再支持,换成PyMysql
--安装pymysql模块:pip install PyMysql
2,Python连接mysql数据库需要下载驱动,在mysql官网下载mysql驱动,注意Python版本要与驱动版本支持的版本一致
3,安装mysql图形界面连接工具navicat


-----------------------
Python-mysql操作
对数据库进行操作步骤:
1,连接数据库,创建游标
2,准备好增,删,改,查sql语句
3,执行sql语句
4,读取执行结果-执行影响的行
5,关闭游标,关闭连接

数据库连接信息如下:
IP地址,端口号,数据库名字,登陆用户名,密码

pymysql中连接数据库方法:
conn=pymysql.Connect(host,db,user,passwd)
cursorclass=pymysql.cursors.DictCursor 指定返回数据为字典格式

创建游标
cursor=conn.cursor()--->每次操作都需要获取游标才能进行。

-------------------------
Python之execute
execut中sql语句的多种方式:
execute(sql语句,参数[可选]):
1,数据直接写在sql语句中
2,用格式化的方式:
sql语句中:列表和元祖:%s代替
字典:%(name)s代替
参数:为真正的数值

例如:
insert_sql='insert into test1(id,name) values(%s,%s)'
data=[14,'小孩']
#字典
data1={'id':14,'name':'xiaohai'}
insert_sql='insert into test1(id,name)values(%(id)s,%(name)s)'
cursor.execute(insert_sql,data)

----------------------------------
python之查询数据
1,查询数据语法:
sql语句:select 字段 form 表名 where 条件语句

2,展示数据,需要调用如下函数
fetchall():返回的数据格式是列表格式
fetchone():返回的数据格式是元祖格式

3,条件语句的用法:重点看代码,掌握用法

---------------------------------
优化:
加入异常判断:
try_except_finally

posted @ 2018-07-16 22:52  乐观的小孩  阅读(149)  评论(0编辑  收藏  举报