Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > VB6 > Копирование таблицы в Access


Автор: timer 1.10.2006, 08:46
возникла задача скопировать таблицу внутри одной базы...
имеется база db.mbd внутри таблица tbl, ее надо скопировать под другим названием, например tbl1
база подключается через Adods1

ничего подходящего не нашел... заранее спасибо...

Автор: boevik 1.10.2006, 08:50
Простым sql statment:
Код

select * into tbl1 from tbl

Автор: timer 1.10.2006, 10:36
Цитата(boevik @ 1.10.2006,  08:50)
Простым sql statment:

спасибо... что то получается...

Автор: timer 1.10.2006, 11:00
а как создать таблицу заново?
нашел вот это - 
Код

CREATE TABLE <TABLE-NAME> 
         ( <COLUMN name> <DATA type>[(<SIZE>)], 
         <COLUMN name> <DATA type> [(<SIZE>)] ... ); 
но куда его вписывать?

Автор: boevik 1.10.2006, 11:46
Вписать в объект connection метод execute.
Код

dim cn as connection

cn.execute "CREATE TABLE <TABLE-NAME> 
         ( <COLUMN name> <DATA type>[(<SIZE>)], 
         <COLUMN name> <DATA type> [(<SIZE>)] ... ); ", connection_string

Автор: Тутанхамец 4.10.2006, 18:05
Цитата

Простым sql statment:

код SQL 
1:

 select * into tbl1 from tbl




Говорят, так не копируются индексы таблицы. 

Автор: boevik 4.10.2006, 20:28
Цитата(Тутанхамец @  4.10.2006,  18:05 Найти цитируемый пост)
Говорят, так не копируются индексы таблицы. 

Говорят правильно.
Если надо индексы, то можно создать при помощи sql statment.

Автор: Akina 4.10.2006, 22:26
Макрос с макрокомандой КопироватьОбъект скопирует таблицу с индексами и прочей дрянью - влоб или через DoCMD.RunMacro 

Автор: Тутанхамец 8.10.2006, 08:46
Цитата

Говорят правильно.
Если надо индексы, то можно создать при помощи sql statment.

А если это произвольная таблица, и мы не знаем, какие у нее индексы? Как в SQL анализировать индексы таблицы, чтобы создать такие же?

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