Pyrhon中Mysql数据库的操作

来源:互联网 发布:金税盘如何备份的数据 编辑:程序博客网 时间:2024/05/21 09:17

mysql基础设置

1.下载
yum install mariadb-server MySQL-python -y
sytemctl start mariadb
mysql_secure_installation

2.utf-8
vim /etc/my.cnf
charset = utf-8
systemctl restart mariadb

python操作mysql

MySQL连接操作

##导入模块import MySQLdb##建立数据库连接conn = MySQLdb.connect(host='localhost',user='root',passwd='westos')hostname  主机名  user  用户   passwd  密码  charset='utf8' 数据库编码##创建一个数据库游标cur = conn.cursor()##提交操作(在上传数据后使用)conn.commit()##关闭游标cur.close()##断开连接conn.close()

游标操作

# cur.execute游标操作
##创建表

In [4]: cur.execute('use python716')Out[4]: 0LIn [5]: cur.execute('create table userinfo(username varchar(20),passwd varchar(20));')Out[5]: 0L

##快速插入多条数据
sqli = “insert into userinfo values(%s,%s)”
cur.executemany(sqli,[(),(),…]) ##插入多条数据(以列表插入)
cur.execute(sqli,()) ##插入单条数据

In [8]: cur.execute('use python716')        ##进入数据库Out[8]: 0LIn [9]: sqli = "insert into userinfo values(%s,%s)"In [10]: cur.executemany(sqli,[('a',1),('b',2)])    ##插入数据Out[10]: 2LIn [11]: cur.executemany(sqli,[('c',1),('d',2)])Out[11]: 2LIn [12]: conn.commit()      ##提交插入的数据

##查询数据
cur.execute(‘select * from userinfo’)
cur.fetchall(self): 接收全部的返回结果行
cur.fetchmany(size=None): 接收 size 条返回结果行 . 如果 size 的值大于返回的结果行的数量 , 则会返回 cursor.arraysize 条数据 .
cur.fetchone(): 返回一条结果行

##移动游标
scroll(value, mode=’relative’): 移动指针到某一行 .
如果 mode=’relative’, 则表示从当前所在行移动 value 条 ;
如果 mode=’absolute’, 则表示从结果集的第一行移动 value 条;

In [13]: cur.execute('select * from userinfo')      ##查看表Out[13]: 4LIn [14]: cur.fetchall()                             ##查看所有结果Out[14]: (('a', '1'), ('b', '2'), ('c', '1'), ('d', '2'))In [15]: cur.fetchall()                             ##由于游标已经到结尾,所以返回值为空Out[15]: ()In [16]: cur.scroll(0,'absolute')                   ##移动游标到起点
原创粉丝点击