我正在编写使用JDBC同时使用sqlite和MySQL的java应用程序.
这些数据库的sql有什么不同吗?我可以对sqlite和MysqL使用相同的查询,还是有任何数据库特定的东西,这对另一个不起作用?
到目前为止,我只使用MysqL,所以我对sqlite并不是很了解.
解决方法:
如果你坚持ANSI SQL92,你应该没事的.
MysqL和sqlite都缺少一些sql92功能(例如FULL OUTER JOIN).
MysqL有RIGHT JOIN和LEFT JOIN,sqlite只有LEFT JOIN. sqlite不支持FOREIGN KEY约束,MysqL也不支持MyISAM表.
sqlite当然没有GRANT / REVOKE,因为权限系统基于底层操作系统的文件权限.