标准表达式中数据类型不匹配(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),也会出现上述问题。记住我