• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

Python与MySQL首度交互

mysql 搞代码 7年前 (2018-06-06) 214次浏览 已收录 0个评论

Python与mysql首次交互

        前两天在工作之余研究了一下Python,对基础有了大致了解,就想拿她很MqSQL交互一下。

一开始就遇到了问题,要import MySQLdb,search发现有人说安装mysql-python,于是就很困惑mysql-python是什么东西呢,下载了就是安装不上,参考的是如下文章:http://blog.csdn.net/wklken/article/details/7253245。于是很纠结,mysql-python就是python用的数据库,还是什么?

继续search,终于揭开心中的迷雾:http://gdgzzch.blog.163.com/blog/static/376404522013012115950320/

        原来MySQLdb就是一个驱动,好了终于搞定了,开始初次接触,很是让人心动。


#encoding=utf-8 #coding=utf-8 #test connection mysql database #author wangchuanbo #time 2013-09-26  #导入MySQLdb模块,注意大小写(如果是没有安装,ubuntu->sudo apt-install python-mysqldb) import sys import MySQLdb  try:  # Python2.5 初始化后会删除 sys.setdefaultencoding 这个方法,我们需要重新载入   reload(sys)  #为了解决乱码问题  sys.setdefaultencoding('utf-8')   #建立和数据库的连接  conn = MySQLdb.connect(host='localhost',user='root',passwd='wcb280280',charset='utf8')  #获取操作游标  cur = conn.cursor()  #执行SQL  cur.execute('create database if not exists python character set utf8')   #选择数据库  conn.select_db('python')   #建表  sql_create_user = 'create table tbl_user(id int unsigned primary key auto_increment, username varchar(20) not null,sex char(2) not null) default charset=utf8'  cur.execute(sql_create_user)  #插入记录  sql_insert_user = "insert into tbl_user(username,sex) values('方平','女')"  cur.execute(sql_insert_user)   #查询记录  sql_select_user = 'select username,sex from tbl_user'  cur.execute(sql_select_user)  result = cur.fetchone()  #获取第一条记录  print '第一条记录是:'  #为了解决乱码问题  result = str(result)  result = result.decode('utf-8')  print result   #提交事物(开始死活插不进去,使劲插,各种纠结,也不报错,就是少了这句,有些版本的驱动可能不需要)  conn.commit()  #关闭连接,释放资源  cur.close()  conn.close() except MySQLdb.Error,e:      print "Mysql Error %d: %s" % (e.args[0], e.args[1])

欢迎大家阅读《Python与MySQL首度交互》,跪求各位点评,by 搞代码


表结构都是utf8编码:

Python与MySQL首度交互

conn_mysql.py保存也是 utf8

Python与MySQL首度交互

 结果是:

Python与MySQL首度交互

           主要参考了两篇文章,再次表示感谢,不过在初次阅读的时候还有有些费解,比如创建数据库用了三个引号的字符串,conn.comment()没有,插入数据的时候使用了列表,可能不利于初学者。

本来打算遵循Python的大道之简的原则,写的让初学者一看便知,结果事总于愿违,遇到了和当初自学PHP是的头疼问题,想当初搞定了PHP的乱码问题,以为在也不怕乱码了,结果这里又卡住了,一开始是插入中文的时候有乱码,最后是读取的时候有乱码,于是代码中就增加了太多解决乱码的多余代码,建议初学者,一开始用英文。

最后整了很久,翻了很久Google这本书,还是没有搞定查询乱码的问题,不知何故,今天实在是没有精力了,改天找时间,捉住BUG,读者如若明白,大可指点一二,感激不尽。

参考的文章如下,很全:

http://www.cnblogs.com/rollenholt/archive/2012/05/29/2524327.html

http://blog.csdn.net/wanghai__/article/details/6718297

http://blog.csdn.net/foyuan/article/details/1711100

http://blog.csdn.net/liuyukuan/article/details/5187633

http://www.cnblogs.com/maseng/archive/2013/03/12/python-mysql.html


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:Python与MySQL首度交互

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址