PHP-MySQL开发人员转向PostgreSQL。我需要知道什么?

时间:2011-02-02 11:42:48

标签: php mysql postgresql

我在PHP-MySQL中开发了大部分应用程序,因为它快速而简单。现在,随着更复杂的应用程序,我想知道MySQL是否是一个不错的选择。我将使用PostgreSQL构建我的最新应用程序。我需要注意哪些事情?使用MySQL时我错过了什么?

2 个答案:

答案 0 :(得分:5)

这个维基页面是一个好的开始:
http://wiki.postgresql.org/wiki/Converting_from_other_Databases_to_PostgreSQL#MySQL

编辑:回答第二部分(你遗漏的事情):

  • generate_series()
  • 延迟约束
  • 检查约束
  • 递归查询
  • 表格功能
  • 常用表格表达式
  • 窗口函数
  • 基于功能的索引
  • 部分索引
  • 在事务表上进行全文搜索
  • 交易表上的GIS功能
  • MINUS或INTERSECT运算符

Edit2:你可能会发现有问题的事情

  • PostgreSQL在匹配数据类型方面要严格得多(其中character_column = 1会引发错误)
  • 没有跨数据库查询,如果你需要这样的东西,将MySQL数据库映射到PostgreSQL模式可能更容易
  • 常规SQL语句中没有变量(设置@nr = 1;选择@nr + 1 ...)

答案 1 :(得分:1)

阅读罚款manual,第2章至第9章是最重要的开始。

确保在PHP中进行适当的错误处理并仔细阅读所有错误消息:在大多数情况下,它会告诉您到底出了什么问题以及如何解决它。附录A包含所有错误消息和代码,您需要它们。 PostgreSQL不接受错误的输入或查询,它是正确的,或者你得到一个错误来开始调试。这是好的,更少的错误和更少的时间花在脚本上。

pg_query_params()和pg_fetch_all()是PHP中与PostgreSQL交互的一些很棒的函数,检查PHP manual