SQLAnywhere: Watcom SQL или T-SQL

Вы можете использовать свойство TimeOfDay и использовать Сравнить с ним.

TimeSpan.Compare(t1.TimeOfDay, t2.TimeOfDay)

Согласно документации:

-1  if  t1 is shorter than t2.
0   if  t1 is equal to t2.
1   if  t1 is longer than t2.

5
задан frlan 6 August 2014 в 11:51
поделиться

3 ответа

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

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

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

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

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

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

Есть некоторые параметры базы данных , которые изменяют поведение, чтобы более точно соответствовать тому, что вы ожидаете от Sybase ASE. Кроме того, есть несколько функций , которые можно использовать для перевода из одного синтаксиса в другой.

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

Есть некоторые параметры базы данных , которые изменяют поведение, чтобы более точно соответствовать тому, что вы ожидаете от Sybase ASE. Кроме того, есть несколько функций , которые можно использовать для перевода из одного синтаксиса в другой.

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

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

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

6
ответ дан 13 December 2019 в 22:15
поделиться

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

3
ответ дан 13 December 2019 в 22:15
поделиться

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

1
ответ дан 13 December 2019 в 22:15
поделиться