在Windows上托管的MySQL与Debian(Linux)之间有什么区别?

时间:2009-03-19 05:56:56

标签: java mysql windows database linux

我正在将MySQL数据库从Debian迁移到windows vista(使用Apache的localhost - 通过EasyPHP安装和运行)。

数据库本质上是一个副本,每个条目都是相同的,但是当我尝试访问数据库时,我会遇到一些奇怪的错误(例如,在某些情况下,表中的前几个条目无法识别程序访问数据库)。

由于数据库和两种情况下的代码是相同的(我使用Java swing应用程序来访问数据库),我得出的结论是,该问题可能与不同的操作系统环境有关。

两个相应操作系统之间的其他差异是否会导致这些问题(甚至在数据库的复制过程中,我通过NaviCat中的'数据传输'功能)?

最后,我必须在Java代码中更改一个查询,该查询在表中输入新条目,主键设置为“自动增量”,并且基本上在查询中,java应用程序发送它的NULL为主键和MySQL处理增量,在Vista托管数据库中我得到一个错误,因为它是无效的语法,所以我将NULL更改为'0',这会与我的问题有关吗?

感谢您的帮助!

3 个答案:

答案 0 :(得分:2)

您可能希望查看数据库字符编码以确保它们匹配。

答案 1 :(得分:0)

关于匹配数据库字符编码的观点很好。另请注意,默认情况下,Windows安装使用InnoDB表,而Ubuntu安装使用MyISAM表。如果您尝试从一个切换到另一个,可能会出现各种问题,包括性能和设计问题。

答案 2 :(得分:0)

Windows上的表名(至少使用MyISAM)不区分大小写,而在Unix / Linux上区分大小写