最近用jdbc连接出现了两个比较费时的问题:
问题1 :mysql创建TEXT类型的表示,总提示默认值上错误:
找了这么一篇文章解决了问题:http://www.sharkuo.com/BLOB-TEXT-column-cannot-have-a-default-value-query
Create table的时候,报错BLOB/TEXT column 'xxxxxx( 表名称)' can't have a default value query ,意思是TEXT类型的表字段不能够有默认值。
搜索到很多解决方案都是将
description TEXT DEFAULT 'www.sharkuo.com', 改为
description TEXT,
原因在于:
1、 MYSQL5.x是不允许BLOB/TEXT类型的字段拥有默认值的。
2、 由于MYSQL是在‘strict mode’严格模式下工作的,如果改为非严格模式,上面的语句就可以执行成功
3、 MYSQL5.x在windows下是默认以‘strict mode’工作的,当执行上面的语句时,会给你一个错误或者警告信息
解决方法:
1、 找到mysql安装根目录下的my.ini文件
2、 找到这样一行:
sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
3、 在其前面加‘#’将其注释掉:
#sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
4、 重启mysql服务
5、 重新执行你的mysql语句
到这mysql建表是解决了==================================
问题2:int i = ps.executeUpdate();程序执行到这,总是debug,找了好多方法都是不行,最后发现时异常抛的有问题,哎==================