发布时间:2019-07-14 10:00:28编辑:auto阅读(1270)
Python访问mysql需要第三方模块MySQLdb
1.安装MySQLdb
首先先把mysql的bin目录加到你的PATH中
下载来的MySQLdb 源码包解包后
进入解压出来的目录
编辑一下site.cfg文件
[quincy@Quincy MySQL-python-1.2.3]$ vim site.cfg
找到#mysql_config = /usr/local/bin/mysql_config
将#去掉,后面写上你的mysql_config的目录
比如我的 mysql_config = /app/mysql-5.6.13/bin/mysql_config
并把第七行的
threadsafe = True改为threadsafe = False
然后:wq
执行
[quincy@Quincy MySQL-python-1.2.3]$ python setup.py build
没问题的话就执行
[quincy@Quincy MySQL-python-1.2.3]$ sudo python setup.py install
安装好了就测试一下
>>> import MySQLdb
这回又出错了
ImportError: libmysqlclient.so.18: cannot open shared object file: No such file or directory
这要在/usr/lib下建立一个到mysql的lib目录下的符号链接
ln -s mysql安装目录/lib/libmysqlclient.so /usr/lib/libmysqlclient.so.18
比如我的是
[quincy@Quincy ~]$ sudo ln -s /app/mysql-5.6.13/lib/libmysqlclient.so /usr/lib/libmysqlclient.so.18
权限不够记得sudo一下
先在import就没问题了
2.使用MySQLdb模块
2.1建立连接
conn=MySQLdb.connect(host=主机地址,user=用户名,passwd=密码,db=数据库,charset=语言编码)
如果是中文charset不写会出现乱码
2.2获得游标
cursor=conn.cursor()
操作必须要有游标
2.3查询
cursor.execute("select语句")
cursor.fetchone()获得一行记录
cursor.fetchmany(n)获得n条记录
cursor.fetchall()获得全部记录
中文字符:如果直接用 print cursor.fetchxx()会显示unicode元组
遍历的话就会输出中文字符了
2.4插入
cursor.execute(“insert into 表名 values(%s)”,待插入的元组) 此时只能插入一条记录
插入多条记录
cursor.executemany("insert into 表名 values (%s,%s)",要插入的记录的元组列表)
2.5删除
cursor.execute("delete from语句")
2.6更改
cursor.execute("update语句")
2.7释放连接
用完要记得释放连接
cursor.close()
conn.close()
上一篇: python 基础篇(一)
下一篇: Python列表之元组
47481
45784
36781
34306
28953
25587
24433
19604
19094
17624
5456°
6039°
5555°
5630°
6556°
5368°
5368°
5874°
5848°
7161°