前两天瞅个空,把WordPress的表全部看了一遍,大部分字段的用意基本清楚,有几个字段仅仅从字面上还无法得知其含义,而且已有数据里,那些字段里都是空白,无法猜测是何用,有些朋友说,这些可能是历史升级时为了向前兼容而保留下来的,对新安装的博客无任何作用,我暂且先不纠结这些。
看完全部表结构后,惊奇的发现,几乎所有的表,里面的字段全部是必填项,只有那两个元信息表里有2个可为null的字段。但是看已有的数据里,却有很多字段是空白。按照常理,如果不是必须不能为null的字段,在数据库设计时,都会允许其为null,而Wordpress里,却没有这样设计,这是为什么?
另外,如果Wordpress的风格就是喜欢表字段为not null,那两个元信息表里为何又要允许为null呢,如:postmeta和commentmeta表里,字段:meta_key,meta_value可以为空,但是依我来看,至少meta_key应该设置为不能为null的。
Wordpress的表设计的原则到底是怎样的呢?全部为not null有什么好处?可以为null又有什么好处?
另外,还发现,WordPress里的时间字段,设置的默认时间为“0000-00-00 00:00:00”,这种时间很容易出问题,将这个时间转化为时间类型的变量时,在JAVA里是行不通的,什么抛异常,在PHP里我就不清楚了,在JAVA里,如果要想不出错,可以通过在数据库连接字符串里加一个参数(&zeroDateTimeBehavior=convertToNull)如:【jdbc:mysql://localhost:3306/jeeWordPress?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true】,就可以将这个时间转成null。
Tags: WordPress 编程思想 MYSQL数据库 |
原创文章如转载,请注明:转载自:巴士飞扬-技术BLOG : http://www.busfly.net/
本文链接地址:http://www.busfly.net/post/wordpress3-table-not-null.html
如果你喜欢本文,请顶一下,支持我,你的支持是我继续发好文章的最大动力。谢谢。
好东西需要分享,快把本文发给你的朋友吧~!~