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


Автор: Pakshin A. S. 20.7.2003, 19:50
База данных: Access
Средство работы: ADO
Среда: Delphi
Суть вопроса: Можно ли переименовать таблицу в базе данных? Если да, то приведите хотя бы какой-нибудь исходник.

Автор: Oleg 26.7.2003, 10:15
VBA позволяет это сделать?

Автор: Jonnik 7.3.2011, 01:54
Здравствуйте.
Можно ли переименовать таблицу в базе данных? Если да, то приведите хотя бы какой-нибудь исходник.
Заранее спасибо

P/S/ Нашел эту информацию http://www.sql.ru/forum/actualthread.aspx?tid=99073

В следующем примере переименовывается таблица test в changed в БД, расположенной в c:\example.mdb. 

Код

Call RenameTable("Provider=Microsoft.Jet.OLEDB.4.0; Data
Source=c:\example.mdb", "test", "changed")


Но возникает вопрос как это реализовать в Delphi через ADO?

Автор: Данкинг 7.3.2011, 02:30
Цитата(Jonnik @  7.3.2011,  01:54 Найти цитируемый пост)
Но возникает вопрос как это реализовать в Delphi через ADO?

А фантазию проявить? smile 
Код

uses comobj;
...
procedure TForm1.Button1Click(Sender: TObject);
var
 bd:variant;
begin
 bd:=CreateoleObject('ADOX.Catalog');
 bd.ActiveConnection:='Provider=Microsoft.Jet.OLEDB.4.0; Data Source=i:\Progi\prg\Delphi\cdrom\cdrom.mdb;';
 bd.Tables['tab'].Name:='tab_new';
end;


Автор: Jonnik 7.3.2011, 10:28
Спасибо.
У меня сработало при этой конфигурации
Код

var
 bd:variant;
begin
 bd:=CreateoleObject('ADOX.Catalog');
 bd.ActiveConnection:='Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;
Data Source=DB.mdb;Mode=ReadWrite;Jet OLEDB:System database="";
Jet OLEDB:Registry Path="";Jet OLEDB:Database Password=qwerty;
Jet OLEDB:Engine Type=5;Jet OLEDB:Create System Database=False;';
 bd.Tables['tab'].Name:='tab_new';
end;

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