Chinaunix首页 | 论坛 | 博客
  • 博客访问: 230219
  • 博文数量: 96
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 0
  • 用 户 组: 普通用户
  • 注册时间: 2016-07-14 11:43
文章分类

全部博文(96)

文章存档

2016年(41)

2015年(55)

我的朋友

分类: Python/Ruby

2015-12-28 16:59:30

1. 需要模块mysqldb
2. 如果mysql整体安装在/usr/local下则需要建立so文件的软链接,比如:
ln -s /usr/local/mysql/lib/libmysqlclient.so.20 /usr/lib/libmysqlclient.so.20
3.测试代码

点击(此处)折叠或打开

  1. import MySQLdb
  2. db = MySQLdb.connect("210.14.154.210","root","goumin123","new_dog123",3308);
  3. cursor = db.cursor();
  4. cursor.execute("SELECT * from notebook limit 0,1");
  5. data = cursor.fetchone();
  6. print data;
  7. db.close();
4. 中文读取乱码,需要调整
确保python代码编码,python sys编码,数据库编码一致即可
同时在数据库结果集直接print时,会显示/u的unicode编码。单独取出内容时,就不会,直接是可显示的字符串
注意sys在set前需要reload一下

点击(此处)折叠或打开

  1. #encoding=utf-8
  2. import sys
  3. import MySQLdb
  4. reload(sys)
  5. sys.setdefaultencoding('utf-8');

  6. db = MySQLdb.connect("210.14.154.210","root","goumin123","new_dog123",3308,charset='utf8');
  7. cursor = db.cursor();
  8. cursor.execute("SELECT subject,authorid from pre_forum_thread limit 0,1");
  9. data = cursor.fetchall();
  10. print data[0][0];
  11. db.close();
  12. f=open("/tmp/3",'w');
  13. f.write(data[0][0]);
  14. f.close();



阅读(825) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~