Форум FAQ О команде
Поиск по сайту:
 
Sybase
Sybase ASA  
Sybase ASE  
Sybase IQ  
Sybase PowerDesigner  
Sybase PowerBuilder  

Продукты
Наши продукты  
Продукты партнеров портала  

Сообщества
Alef community  

Меню
Регистрация  
Почта  

Вход

Рассылка
Рассылка 'РСУБД Sybase ASA 9 - мощность, легкость и надежность'
Почтовая рассылка
"Технологии обработки данных компании Sybase"


Статистика
Яндекс цитирования

Rambler's Top100
Находится в каталоге Апорт

Главная -> Статьи
Какой диалект SQL лучше использовать ?

Какой диалект SQL лучше использовать ?

WatcomSQL - родной диалект для ASA. Находиться в постоянном развитие, все основные прелести ASA реализованны именно в нем.

TransactSQL - дополнительный диалект ASA, сделан для совместимости с Sybase ASE и MSSQL. Поэтому развивается только тогда, когда команда Sybase ASE решает расширить свой TSQL (так же в ASA периодически для совместимости с MSSQL добавляются различные системные функции и процедуры).

В общем, если БД всегда будет на ASA и его никто не планирует в дальнейшем переводить на Sybase ASE или MSSQL, то лучше всего конечно же WatcomSQL. Если же БД должна быть совместима, то нужно включать флаги TSQL-совместимости, забывать про BEFORE-триггера, рекурсивные запросы, обработку ошибок через exceptions и т.д. и т.п.

В базе данных разрешается "смешивать" диалекты, то есть можно одновременно иметь процедуры на WatcomSQL и на TSQL. Внутри скрипта обьекта диалекты смешивать нельзя. Так же нельзя смешивать на разных диалектах триггеры на одну таблицу.

Для работы с диалектами есть встроенные системные функции:
SQLDIALECT ( sql-statement-string )
- определит, на каком диалекте написан переданный скрипт и вернет в виде строки значение 'Watcom-SQL' или 'Transact-SQL'.

TRANSACTSQL ( sql-statement-string )
- перевод скрипта с WatcomSQL на TSQL. В силу больших ограничений TSQL по функциональности перед WatcomSQL, в скрипте будут комментироваться не поддерживающиеся в TSQL куски кода.

WATCOMSQL ( sql-statement-string )
- перевод скрипта с TSQL на WatcomSQL. Скрипт будет перегнан один в один, без потери функциональности.

Так же переводить из одного диалекта в другой можно в Sybase Central, щелкнув на нужной процедуре правой кнопкой мышки и выбрав нужный пункт "Translate to".


Дата публикации: Monday 27 March 2006 18:28:15
Материал прочитан: 11973 раз(а)
[ Назад ]



Продвижение сайтов
Биржа ссылок

Copyright©2005 phpMS. Все права защищены.
hosted on pets-tree