Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Базы данных и репортинг > снова sql


Автор: z-END 24.2.2005, 12:37
можно ли как-нибудь используя такую конструкцию: (из DRKB)
Код

with Q.SQL do
     begin
       Add('Create Table Funcionarios');
       Add('( ID  AutoInc,');
          {...}
       Add('  Primary Key ( ID ) )   ');
     end;

создать поле с именем LEVEL?

Автор: Dimich 24.2.2005, 14:08
Можно!
Код
create table Funcionarioss ("level" integer);
Все дело в волшебных кавычках. Правда тут могут еще возникнуть проблемы с обращением к этому полю из хранимых процедур (в частности из PL/SQL), хотя и это решается кавычками, но в разных случаях по-разному (есть свои особенности, которые я так не помню). Если такое имя можно избежать, то лучше сделать это.

Автор: DimW 24.2.2005, 14:31
это все от СУБД зависит, в Oracle создается, а вот я в Access пытался создать такое поле результат нулевой. Пришлось править на Level_ . Дело все в том что level является оператором языка SQL.

Автор: Dimich 24.2.2005, 14:56
У меня создается... И из аксеса и из дельфи. Вот только сомневаюсь, что работать с ним получится без гемора... Запутаешься с кавычками!

Автор: z-END 24.2.2005, 15:00
Цитата(Dimich @ 24.2.2005, 14:08)
create table Funcionarioss ("level" integer);

вот че получилось:
Цитата
Invalid use of keyword
Token: Integer;
Primary
Line Number: 9.

ЗЫ paradox

Автор: Dimich 24.2.2005, 15:08
Цитата(z @ 24.2.2005, 15:00)
ЗЫ paradox
- это БД?

Автор: z-END 24.2.2005, 15:17
ага smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)