示例一
#coding=UTF-8 import sys import MySQLdb import time reload(sys) sys.setdefaultencoding('utf-8') def connectDemo(): return MySQLdb.Connection("127.0.0.1","root","root","demo",3306,charset="utf8") if __name__ == '__main__': begin=time.time() conn=connectDemo() cursor = conn.cursor() sql=""" show tables """ count = cursor.execute(sql) rows = cursor.fetchall() cursor.close() conn.close() print "========demo库共:%s 张表============" % (count) print '耗时:%s 秒' % (time.time()-begin)
示例二
import MySQLdb conn = MySQLdb.connect(host="localhost", user="root", passwd="123456", db="test") cursor = conn.cursor() cursor.execute("select * from hard") res = cursor.fetchall() for x in res: print x cursor.close() conn.close()
示例三
1 安装Python的Mysql包
root@10.1.1.45:~# apt-get install python-mysqldb root@10.1.1.45:~# python Python 2.5.2 (r252:60911, Jan 4 2009, 21:59:32) [GCC 4.3.2] on linux2 Type "help", "copyright", "credits" or "license" for more information. > import MySQLdb >
这里导入MySQLdb没有报错,就说明安装成功.
2 下面就可以连接数据库,可以进行增删改操作.
root@10.1.1.45:python# cat create.py #!/usr/bin/env python #coding=utf-8 #导入相关模块 import MySQLdb #建立和mysql数据库的连接 conn = MySQLdb.connect(host='localhost',user='root',passwd='davehe') #获取游标 curs = conn.cursor() #执行SQL,创建一个数据库 curs.execute("create database pythondb") #选择连接哪个数据库 conn.select_db('pythondb') #执行SQL,创建一个表 curs.execute("create table test(id int,message varchar(50))") #插入一条记录 value = [1,"davehe"] curs.execute("insert into test values(%s,%s)",value) #插入多条记录 values = [] for i in range(20): values.append((i,'hello mysqldb' + str(i))) curs.executemany("insert into test values(%s,%s)",values) #提交修改 conn.commit() #关闭游标连接,释放资源 curs.close() #关闭连接 conn.close() root@10.1.1.45:python# ./create.py
3 下面利用python查看mysql里刚添加的记录.
root@10.1.1.45:python# cat select.py #!/usr/bin/env python #coding=utf-8 #导入相关模块 import MySQLdb #建立和mysql数据库的连接 conn = MySQLdb.connect(host='localhost',user='root',passwd='hc1226') #获取游标 curs = conn.cursor() #选择连接哪个数据库 conn.select_db('pythondb') #查看共有多少条记录 count = curs.execute('select * from test') print "一共有%s条记录" % count #获取一条记录,以一个元组返回 result = curs.fetchone() print "当前的一条记录 ID:%s message:%s" % result #获取后10条记录,由于之前执行了getchone(),所以游标已经指到第二条记录,下面也就从第二条记录开始返回 results = curs.fetchmany(10) for r in results: print r #重置游标位置,0,为偏移量,mode = relative(默认) curs.scroll(0,mode='absolute') #获取所有记录 results = curs.fetchall() for r in results: print r #提交修改 conn.commit() #关闭游标连接,释放资源 curs.close() #关闭连接 conn.close()
root@10.1.1.45:python# ./select.py 一共有21条记录 当前的一条记录 ID:1 message:davehe (0L, 'hello mysqldb0') (1L, 'hello mysqldb1') (2L, 'hello mysqldb2') (3L, 'hello mysqldb3') (4L, 'hello mysqldb4') (5L, 'hello mysqldb5') (6L, 'hello mysqldb6') (7L, 'hello mysqldb7') (8L, 'hello mysqldb8') (9L, 'hello mysqldb9') (1L, 'davehe') (0L, 'hello mysqldb0') (1L, 'hello mysqldb1') (2L, 'hello mysqldb2') (3L, 'hello mysqldb3') (4L, 'hello mysqldb4') (5L, 'hello mysqldb5') (6L, 'hello mysqldb6') (7L, 'hello mysqldb7') (8L, 'hello mysqldb8') (9L, 'hello mysqldb9') (10L, 'hello mysqldb10') (11L, 'hello mysqldb11') (12L, 'hello mysqldb12') (13L, 'hello mysqldb13') (14L, 'hello mysqldb14') (15L, 'hello mysqldb15') (16L, 'hello mysqldb16') (17L, 'hello mysqldb17') (18L, 'hello mysqldb18') (19L, 'hello mysqldb19')
华山资源网 Design By www.eoogi.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
华山资源网 Design By www.eoogi.com
暂无评论...
更新日志
2024年11月15日
2024年11月15日
- 南合文斗.2007-陪君醉笑三千尘鸟人唱片】【FLAC+CUE】
- 群星《我们的歌第六季 第1期》[320K/MP3][90.72MB]
- 群星《我们的歌第六季 第1期》[FLAC/分轨][456.01MB]
- 李雨寰《Break Free》[320K/MP3][98.39MB]
- 草蜢.2001-《真经典》环球唱片[WAV+CUE]
- 群星.2009-第4届2008十大发烧唱片精选[FLAC+CUE]
- 丁红《女儿情》[DTS-WAV]
- 陈惠婷.2017-Voyager3【亚神音乐】【FLAC分轨】
- 群星.2001-华纳歌声魅影【华纳】【WAV+CUE】
- 张雨生.2016-雨后星空2CD【丰华】【WAV+CUE】
- 李雨寰《Break Free》[FLAC/分轨][533MB]
- 廖也欧《面朝大海》[320K/MP3][18.35MB]
- 廖也欧《面朝大海》[Hi-Res][24bit 48kHz][FLAC/分轨][170.14MB]
- s13T1夺冠五人名单都有谁 s13T1夺冠五人名单一览
- 英雄联盟T1战队队长都有谁 T1战队所有队长介绍