欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

关于mysql的几个小问题_MySQL

程序员文章站 2022-05-28 18:42:27
...
1、Date问题

程序中使用java.util.Date类型与数据库中的date类型数据不匹配;例如,假设数据表如下图所示:

关于mysql的几个小问题_MySQL

而在程序中代码为:

INSERT INTO table VALUES(1,new Date(),'detail') 其中Date() 为java.util.Date()类型。那么此时不能插入成功。


解决方法:

a.在程序中使用java.sql.Date类型

b.在程序中使用字符串类型,如"2014-7-11";而在数据表中仍然用date类型,因为数据库会自动将字符串类型转化成相应的date类型

c.在程序和数据表中均使用字符类型,这样数据库的效率会更快


2、关于数据库插入数据时单引号( ' )问题

如果数据表类型为数字型时,插入数据可以不加单引号;对于varchar类型数据,则应该加单引号,如果不加单引号,mysql默认其为数字型,此时则可能出现不匹配(不能转化成数字型数据)的情况而不能插入,但是如果其value值与其对应的属性相同,此时则表示此属性对应的值为null或者“ ”。

例如(表结构如上图所示),

执行如下操作时:

关于mysql的几个小问题_MySQL


因为第三个字段不能转化成数字型,所以出错。而当将第三个字段改变数字型时结果如下:

关于mysql的几个小问题_MySQL


而当将第三个字段改变其属性名之后,结果如下:

关于mysql的几个小问题_MySQL

第三个字段(detail)为空串(因为表中要求detail不能为null),否则第三个字段(detail)为NULL。