Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.12.18;
Скачать: CL | DM;

Вниз

Создание таблиц с помощью IBSQL   Найти похожие ветки 

 
Александр_н   (2005-11-02 15:47) [0]

Подскажите как можно создать таблицу(копию существующей) с помощью IBSQL. Я не нашёл информации в Help. И поступил так:
IBSQL1.Close;
IBSQL1.SQL.Clear;
IBSQL1.SQL.Add("create table test2 (");
for i:=0 to IBQuery2.FieldCount-1 do
 begin
 IBSQL1.SQL.Add(IBQuery2.Fields[i].FieldName+" ");
 case IBQuery2.Fields[i].DataType of
 ftinteger: IBSQL1.SQL.Add("integer");
 ftstring : IBSQL1.SQL.Add("varchar("+IntToStr(IBQuery2.Fields[i].DataSize)+
            ") COLLATE PXW_CYRL");
 end; //case
 if i<>IBQuery2.FieldCount-1 then
   IBSQL1.SQL.Add(",");
 end;
IBSQL1.SQL.Add(")");
IBSQL1.ExecQuery;
Сработало, но тогда в case необходимо перечислять все типы полей, да и некрасиво это как-то. Если возможно приведите пример. Спасибо.


 
Desdechado ©   (2005-11-02 15:54) [1]

копия структурная? или со всеми взаимосвязями?
рекомендую посмотреть в сторону системных таблиц IB (их описание есть в документации)


 
ANB ©   (2005-11-02 15:55) [2]

если create table as select * from Table1 не прокатит (это из оракла), то, видимо, ты на верном пути. Имхо.


 
Johnmen ©   (2005-11-02 16:03) [3]

Не прокатит....


 
Виталий Панасенко   (2005-11-02 16:04) [4]

Лучше не изобретать велосипед, а использовать IBExpert.. если, конечно, таблицы не в ран-тайме создаются...Просто извлек метаданные, записал в файл, принес, куда нужно, выполнил скрипт...той же ISQL



Страницы: 1 вся ветка

Текущий архив: 2005.12.18;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.044 c
2-1133600247
taraban
2005-12-03 11:57
2005.12.18
отлов клавишь


4-1129788953
Владимир
2005-10-20 10:15
2005.12.18
Как программно получить доступ к Event Log


14-1132723017
Джо
2005-11-23 08:16
2005.12.18
Google Base


14-1132911097
Koala
2005-11-25 12:31
2005.12.18
Срочно!!! Нужна помощь в востановлении данных....


4-1129897383
Гас
2005-10-21 16:23
2005.12.18
Как в TEdit отключить beep при выходе из этого контрола?