圆月山庄资源网 Design By www.vgjia.com
1、获取插入数据的主键id
import pymysql database = pymysql.connect( host="127.0.0.1", port=3306, user="root", password="root", database="test" ) cursor = database.cursor() for i in range(5): cursor.execute('insert into test (name) values ("test")') print(database.insert_id()) database.commit() cursor.close() database.close()
通过db.insert_id()方法可以获取插入数据的主键id, 注意一定要在commit之前获取,否则返回0。
2、创建时间、更新时间
DEFAULT CURRENT_TIMESTAMP --表示当插入数据的时候,该字段默认值为当前时间 ON UPDATE CURRENT_TIMESTAMP --表示每次更新这条数据的时候,该字段都会更新成当前时间
这两个操作是mysql数据库本身在维护,可以根据这个特性来生成【创建时间】和【更新时间】两个字段,且不需要代码来维护。
CREATE TABLE `test` ( `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间' ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
3、Python插入数据库时字符串中含有单引号或双引号报错
可以使用 pymysql.escape_string() 转换
if type(str_content) is str: str_content = pymysql.escape_string(str_content)
4、获取单个表的字段名和信息的方法
import MySQLdb as mdb import sys #获取数据库的链接对象 con = mdb.connect('localhost', 'root', 'root', 'test') with con: #获取普通的查询 cursor cur = con.cursor() cur.execute("SELECT * FROM Writers") rows = cur.fetchall() #获取连接对象的描述信息 desc = cur.description print 'cur.description:',desc #打印表头,就是字段名字 print "%s %3s" % (desc[0][0], desc[1][0]) for row in rows: #打印结果 print "%2s %3s" % row
5、从数据库中把图片读出来
import MySQLdb as mdb import sys try: #连接 mysql,获取连接的对象 conn = mdb.connect('localhost', 'root', 'root', 'test'); cursor = conn.cursor() #执行查询该图片字段的 SQL cursor.execute("SELECT Data FROM Images LIMIT 1") #使用二进制写文件的方法,打开一个图片文件,若不存在则自动创建 fout = open('image.png','wb') #直接将数据如文件 fout.write(cursor.fetchone()[0]) #关闭写入的文件 fout.close() #释放查询数据的资源 cursor.close() conn.close() except IOError, e: #捕获 IO 的异常 ,主要是文件写入会发生错误 print "Error %d: %s" % (e.args[0],e.args[1]) sys.exit(1)
以上就是使用Python操作MySQL的小技巧的详细内容,更多关于python 操作MySQL的资料请关注其它相关文章!
圆月山庄资源网 Design By www.vgjia.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
圆月山庄资源网 Design By www.vgjia.com
暂无评论...
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。
更新日志
2024年11月02日
2024年11月02日
- 《暗喻幻想》顺风耳作用介绍
- 崔健1985-梦中的倾诉[再版][WAV+CUE]
- 黄子馨《追星Xin的恋人们2》HQ头版限量编号[WAV+CUE]
- 孟庭苇《情人的眼泪》开盘母带[低速原抓WAV+CUE]
- 孙露《谁为我停留HQCD》[低速原抓WAV+CUE][1.1G]
- 孙悦《时光音乐会》纯银CD[低速原抓WAV+CUE][1.1G]
- 任然《渐晚》[FLAC/分轨][72.32MB]
- 英雄联盟新英雄安蓓萨上线了吗 新英雄安蓓萨技能介绍
- 魔兽世界奥杜尔竞速赛什么时候开启 奥杜尔竞速赛开启时间介绍
- 无畏契约CGRS准星代码多少 CGRS准星代码分享一览
- 张靓颖.2012-倾听【少城时代】【WAV+CUE】
- 游鸿明.1999-五月的雪【大宇国际】【WAV+CUE】
- 曹方.2005-遇见我【钛友文化】【WAV+CUE】
- Unity6引擎上线:稳定性提升、CPU性能最高提升4倍
- 人皇Sky今日举行婚礼!电竞传奇步入新篇章