标准表达式中数据类型不匹配(Access 时间格式)

早上,在尝试把一个应该程序从Mysql的数据库迁移到Access(数据库改用Access)时,出现了这样一个错误:标准表达式中数据类型不匹配
我忙活了一个早上,也没有弄清楚是为什么,后来,突然想起原来使用Access的时候,时间是用#括起来的(在Mysql中是可以用‘’的);而我在迁移的时候,这些Sql语句都几乎没有变过。马上把操作时间的地方改用#,问题迎刃而解!

我这里想说的是,数据库之间的差距其实是非常大的,总是以为应该是差不多的,但是,即使是差一点点,但是在应用程序中的话,这个一点点就会被扩大n倍。要发现这个小差别就够搞死你了。而且,好像MS的数据库也不是支持标准的Sql语句的。 
所以,以后在设计数据库的时候,如果以后要做数据库方面的迁移的话,那么在设计的时候,要绝对的考虑清楚各个数据库的兼容问题,以及支持的Sql语句之间的区别。

PS: 早上发现另一个会出现这种情况的问题,就是在查询的时候,如果运用Group By子句,且select的内容不包含在group by中(如select name, sum(money) from t_test group by id),也会出现上述问题。
posted @ 2008-02-18 13:50  随风逝去(叶进)  阅读(11802)  评论(12编辑  收藏  举报
Free Web Counter
Free Web Counter