首页IT科技mysql中排序语句([开发笔记]MySQL & Python经验两则)

mysql中排序语句([开发笔记]MySQL & Python经验两则)

时间2025-09-18 17:04:49分类IT科技浏览6278
导读:在最近的开发中,遇到两个比较奇怪的问题,把解决办法写在这里:...

在最近的开发中             ,遇到两个比较奇怪的问题                       ,把解决办法写在这里:

1.使用Python操作MySQL数据库时        ,如果插入的数据条目很多          ,一条条地执行insert…into语句可能会导致connection error                      ,正确的办法是使用executemany(这有点类似JDBC中的batch操作):

T = ((’s11′, 1), (’s21′, 2))

cursor = conn.cursor()

cursor.executemany("insert into table_a (str_column, int_column) values (%s, %d)", T)

但是            ,执行这段程序却会报告错误:

Type Error, expect int……开始百思不得其解       ,上网搜索才发现                     ,executemany执行的sql语句中                ,所有变量都必须写作%s的形式

T = ((’s11′, 1), (’s21′, 2))

cursor = conn.cursor()

cursor.executemany("insert into table_a (str_column, int_column) values (%s, %s)", T)

测试通过

2.两台环境一样的机器    ,一台使用MySQL 4.1.18                     ,另一台使用MySQL 4.1.21                    ,在4.1.18上能够正常运行的SQL语句,在4.1.21上报错:

ERROR 1030 (HY000): Got error 28 from storage engine

检查两台机器的storage engine                 ,未发现问题;上网搜索才发现                        ,出现此问题的原因是    ,临时空间不够             ,无法执行此SQL语句                。

解决的办法是                       ,清空/tmp目录        ,或者修改my.cnf中的tmpdir参数          ,指向具有足够空间的目录                      ,即可                     。
声明:本站所有文章            ,如无特殊说明或标注       ,均为本站原创发布       。任何个人或组织                     ,在未征得本站同意时                ,禁止复制             、盗用                       、采集        、发布本站内容到任何网站          、书籍等各类媒体平台            。如若本站内容侵犯了原著者的合法权益    ,可联系我们进行处理                      。

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
java面试官如何面试别人(【Java面试】听说Java求职者/面试官都关注了我,这道面试题一个空Object对象的占多大空间?你答的上来吗) tcl终端(tset命令 – 终端初始化)