Хранимые процедуры: что больше похоже на SQL Server 2000 - Postgresql или MySQL - PullRequest
1 голос
/ 09 декабря 2010

У меня есть база данных SQL Server 2000 с множеством хранимых процедур. Я хочу перейти на базу данных с открытым исходным кодом, и я знаю, что мне придется переписать процедуры, но я хотел бы сделать это с минимальными усилиями, насколько это возможно

Ответы [ 3 ]

5 голосов
/ 09 декабря 2010

Не является прямым портом, но из двух - синтаксис MySQL больше похож на синтаксис SQL Server, чем PostgreSQL.

SQL Server 2000 не имел аналитических / ранжирующих / оконных функций - как и MySQL в настоящее время.Кроме того, нет поддержки WITH / CTE - опять же, MySQL также не поддерживает это.Если бы вы переходили с SQL Server 2005+, я бы порекомендовал PostgreSQL 8.4+ ради любой из двух вещей, которые я только что упомянул.

1 голос
/ 12 декабря 2010

Сохраненные в MySQL процедуры действительно просты, например, вы не можете вызвать исключение изнутри процесса, что делает обработку ошибок ДЕЙСТВИТЕЛЬНО БОЛЬНОЙ.Кроме того, отладка хранимых процедур является проблемой, сообщения об ошибках неясны, а сам язык довольно ограничен.

Postgres гораздо более зрел для этого;если в вашем приложении много сохраненных процедур, это в значительной степени исключает mysql.

0 голосов
/ 09 декабря 2010

MySQL поддерживает хранимые процедуры как таковые; PostgreSQL поддерживает хранимые функции, которые на практике очень похожи. Первый язык запросов для PostgreSQL, PL / pgSQL, похож на Oracle PL / SQL. PostgreSQL поддерживает хранимые процедуры SQL: 2003 PSM, а также многие другие языки программирования общего назначения, такие как Perl (PL / Perl), Python (PL / Python), TCL (PL / Tcl), Java (PL / Java) и C (PL). / С). MySQL следует синтаксису SQL: 2003 для хранимых подпрограмм, который также используется в IBM DB2. —MySQL AB, Справочное руководство по MySQL 5.1 :: 18 Хранимых процедур и функций Через интерфейс плагинов MySQL поддерживает хранимые процедуры на внешних языках в Java, Perl, XML-RPC с большим количеством плагинов в работе.

из текст ссылки

...