mysql的CR_COMMANDS_OUT_OF_SYNC错误
mysql执行sql语句时有时会出现CR_COMMANDS_OUT_OF_SYNC错误(2014)
提示语为
commands out of sync; you can't run this command now
网上对此错误的描述很少,而且没有给出解决方法。
其实这是因为上一个sql执行返回了多个结果集,但没有把结果都取出来,就执行了新的sql语句,就会产生这个错误。
应在sql语句执行后
用mysql_store_result(&ninghao79);取出结果集,
然后用mysql_next_result(&ninghao79);检查是否有剩余结果集,
如果有就再用mysql_store_result(&ninghao79);把剩余结果集取出来。
这样就能解决CR_COMMANDS_OUT_OF_SYNC错误了。
转自:http://blog.sina.com.cn/s/blog_4e45516601000b9x.html
相关文档:
MySQL服务器包含一些其他SQL DBMS中不具备的扩展。注意,如果使用了它们,将无法把代码移植到其他SQL服务器。在某些情况下,你可以编写包含MySQL扩展的代码,但仍保持其可移植性,方法是用“/*... */”注释掉这些扩展。MySQL服务器能够解析并执行注释中的代码,就像对待其他MySQL语句一样,但其他SQL服务器将忽略 ......
今天小编要和大家说的是handler的用法,希望对大家有所帮助。
HANDLER tbl_name OPEN [ AS alias ]
HANDLER tbl_name READ index_name { = | >= | <= | < } (value1,value2,...)
[ WHERE where_condition ] [LIMIT ... ]
HANDLER tbl_name READ index_name { FIRST | NEXT | PREV | LAST } ......
注:本文讨论的范围为未启用MAXDB模式的表!
今天建了一个表,里面有一个列是timestamp类型,我本意是在数据更新时,这个字段的时间能自动更新。岂知对这个类型的值还不甚了解,导致出错。发现这个字段只是在这行数据建立的时候有值,在更新的却无变化。
查找资料,发现是我 ......
1. 停到运行的mysql: /etc/init.d/mysql stop
2. 使用skip-grant-tables这个选项启动MySQL: /usr/bin/mysqld_safe --skip-grant-tables &
3. 现在可以不用密码进入mysql 了。
# myql
>   ......
java中时间戳和时间字符串之间的转换
获取当前的unix时间戳
new Date().getTime()
System.currentTimeMillis()
返回的是毫秒数,要转换long t = System.currentTimeMillis()/1000;
获取当前年月日以及时分秒
Calendar c = Calendar.getInstance();
c.get(Calendar.YEAR)) c.get(Calendar.YEAR)) c.get(C ......