Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как правильно создавать таблицу? [D7, MSSQL]


Страницы:   1 2

ocean ©   (2009-12-29 12:15:00) 

AdoQuery1.SQL.Text := 'drop table table1';
try AdoQuery1.ExecSQL;
except; end;
AdoQuery1.SQL.Text := 'create table table1 (   'id  int NOT NULL identity(1,1) PRIMARY KEY, name      varchar(50)        NULL ... )';
AdoQuery1.ExecSQL;
На второй execsql выдает general exception "в базе уже есть объект с таким именем". Как это делать правильно?


Медвежонок Пятачок   (2009-12-29 12:52:00) [21]

На второй execsql выдает general exception "в базе уже есть объект с таким именем". Как это делать правильно?

не вызывать create table если создаваемая таблица уже есть в базе данных.


Медвежонок Пятачок   (2009-12-29 12:50:00) [22]

Но ведь каждый делает ЭТО.

Это еще не значит, что реализация языка SQL находится в делфи.


ocean   (2009-12-29 12:47:00) [23]

> Ega23 ©   (29.12.09 12:26) [3]
а если таблица уже есть, а я хочу изменить столбцы, alter table? Логичнее
drop
create table
Да и пробовал я это. ExecSQL ругается на несколько операций в 1 запросе.
> В делфи вообще нет никакой реализации SQL.
Но ведь каждый делает ЭТО. А ты как создаешь таблицы?


Медвежонок Пятачок   (2009-12-29 12:40:00) [24]

реализация SQL в Delphi7 мягко говоря неполная?

Я бы сказал еще категоричнее.
В делфи вообще нет никакой реализации SQL.


Медвежонок Пятачок   (2009-12-29 12:36:00) [25]

мда. глубокая мысль.


ocean   (2009-12-29 12:35:00) [26]

Значит, реализация SQL в Delphi7 мягко говоря неполная?


Ega23   (2009-12-29 12:26:00) [27]


if not exists (select 1 from  sysobjects where  id = object_id('Table1')             and   type = 'U')
begin
 create table Table1 (
    id  int NOT NULL identity(1,1),
    .....
    constraint PK_Table1 primary key  (id)
 );
 end;


Медвежонок Пятачок   (2009-12-29 12:22:00) [28]

Как это делать правильно?

Правильно - это не писать таких конструкций

try
...
except
end;


Медвежонок Пятачок   (2009-12-29 12:20:00) [29]

сказано же что есть уже такой объект


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо