2009-06-03 3 views
5

Общий вопрос. Я разрабатываю для Sybase SQL Anywhere 10. Для соображений обратной совместимости почти все наши хранимые процедуры написаны в Transact-SQL. Есть ли какие-либо преимущества или недостатки в использовании T-SQL вместо диалекта Watcom?SQLAnywhere: Watcom SQL или T-SQL

ответ

6

Преимущества TSQL:

  • большую совместимость с Sybase ASE и Microsoft SQL Server

Недостатки TSQL:

  • некоторые операторы и функции доступны только в Watcom-SQL процедуры. Некоторые примеры:
    • больший контроль над EXECUTE IMMEDIATE поведения в Watcom-SQL
    • НАГРУЗКИ TABLE, UNLOAD TABLE, реорганизовать (среди прочих) доступны только в Watcom-SQL
    • FOR заявление для цикла по результатам запроса и автоматического объявления переменных, содержащих значения, очень полезны, но недоступны в TSQL.
  • Отчеты об ошибках менее согласованы, поскольку предполагается, что процедуры TSQL обрабатывают свои собственные ошибки, а процедуры Watcom-SQL немедленно сообщают об ошибках , Процедуры Watcom-SQL могут содержать предложение EXCEPTION для обработки ошибок.
  • Операторы не разделяются запятыми, поэтому процедуры TSQL сложнее разобрать (и прочитать). Синтаксические ошибки иногда могут не указывать на фактическое расположение ошибки
  • нет возможности явно объявить результирующий набор процедуры
  • нет поддержки уровня строк не вызывает в TSQL
  • обработчики событий могут быть написаны только с использованием Watcom-SQL

Документация по совместимости с SQL Anywhere T-SQL составляет available online. Есть database options, которые изменяют поведение, чтобы более точно соответствовать тому, что вы ожидаете от Sybase ASE. Кроме того, есть некоторые functions, которые можно использовать для перевода из одного синтаксиса в другой.

Обратите внимание: если вы хотите начать добавлять заявления на диалекте Watcom в существующую хранимую процедуру, вам нужно будет сменить SP так, чтобы он был полностью записан на диалекте Watcom. Вы не можете смешивать синтаксисы в SP, триггерах или партиях.

1

Если вы когда-либо пытались подключиться к SQL Server (или вы идете на работу на SQL Server), Sybase T-SQL очень близок к SQL-серверу T-SQL. Sybase и MS объединились в течение дня, поэтому ядро ​​этих языков очень похоже.

3

Что KM сказал - с другой стороны, диалект «Watcom» намного ближе к стандартному стандарту ISO/ANSI, так что диалект, скорее всего, будет соответствовать некоторым другим продуктам и обратиться к людям, знакомым со стандартами SQL ,

Смежные вопросы