用MS SQL2000遇到这样的问题了,我所采用的ms sql的驱动是官方的.在网上查了一下,感觉说得零零散散,模模糊糊,有错有对.真是鱼龙混杂,感觉像进了市场买菜.......我尽我的掌握和有限的水平综合起来总结一下:
这个问题的原因是只要表里有Blob或者Clob两个当中的一种或者这两个字段都存在,并且采用MS SQL官方的驱动.就会产生这个错误!并且查看了很多资料,很多总结都指出这种错误仅MS SQL2000才会出现.
网上总结的微软驱动的缺点及解决方案: 数据库表:TChannle
(1)如果采用jdbc-odbc驱动,那么就必须按照查询顺序来一次读取(不论有没有image或text类型)
(2)如果采用微软提供的ms sql server jdbc driver,如果查询语句中,不存在image或text类型字段,那么可以按照无序获取
(3)如果采用微软提供的ms sql server jdbc driver,如果查询语句中,存在image或text类型字段,那么就必须按照顺序读取,否则就会报告Driver]ResultSet can not re-read row data for column之类的错误
这个问题的原因是只要表里有Blob或者Clob两个当中的一种或者这两个字段都存在,并且采用MS SQL官方的驱动.就会产生这个错误!并且查看了很多资料,很多总结都指出这种错误仅MS SQL2000才会出现.
网上总结的微软驱动的缺点及解决方案: 数据库表:TChannle
(1)如果采用jdbc-odbc驱动,那么就必须按照查询顺序来一次读取(不论有没有image或text类型)
(2)如果采用微软提供的ms sql server jdbc driver,如果查询语句中,不存在image或text类型字段,那么可以按照无序获取
(3)如果采用微软提供的ms sql server jdbc driver,如果查询语句中,存在image或text类型字段,那么就必须按照顺序读取,否则就会报告Driver]ResultSet can not re-read row data for column之类的错误
Update:mysql5在phpmyadmin无法连接时执行的语句:
SET PASSWORD FOR ‘root’@'localhost’ = OLD_PASSWORD(’[newpassword]‘);
刚才在导入数据的时候,navicat报错:
Data too long for column ‘ip’ at row 1
提示数据对于ip字段太长
如果数据类型不正确,也会出错,而不像4.*那样自动转换:
sendQuery:Incorrect datetime value: ‘未知’ for column ‘date’ at row 1
SET PASSWORD FOR ‘root’@'localhost’ = OLD_PASSWORD(’[newpassword]‘);
刚才在导入数据的时候,navicat报错:
Data too long for column ‘ip’ at row 1
提示数据对于ip字段太长
如果数据类型不正确,也会出错,而不像4.*那样自动转换:
sendQuery:Incorrect datetime value: ‘未知’ for column ‘date’ at row 1