Форум: "Базы";
Текущий архив: 2005.12.18;
Скачать: [xml.tar.bz2];
ВнизСоздание таблиц с помощью 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;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.013 c