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

Вниз

Динамическое создание БД   Найти похожие ветки 

 
iont   (2003-07-25 04:23) [0]

Можно ли и как создать базу данных во время выполнения приложения, используя обхекты ADO?

Заранее благодарен


 
edit_box ©   (2003-07-25 04:44) [1]

вобщем можно.
У объектов DataSourse и Table есть много методов. Например Create.
Так вот, если использовать их и немного SQL, то можно.
(По крайней мере для MSSQL Server)


 
iont   (2003-07-25 05:27) [2]

ДатаСорс вообще не юзаю, а напрямую, через TAdoDataSet посылаю запрос и вывожу результаты в обычный ListView.

В общем, сейчас я использую dBase через мост ADO<->OLE DB<->ODBC.

Конечно всё тормозит, но создание БД сводится к заданию папки на диске где будут хранится таблицы.

Из родных OLE DB провайдеров, кроме Jet, ничего нет (ну не будут юзеры держать SQL сервер для одной моей проги). Да и, собственно, Access мне вполне подходит. Но, динамическое создание базы данных абсолютно критично.

Только вот как и кому послать запрос, если для открытия сеанса связи надо указать на существующий файл с базой данных?


 
iont   (2003-07-25 16:28) [3]

Ну так что, никто не знает или нельзя такого сделать?


 
iont   (2003-07-25 17:17) [4]

Копание в MSDN привело к следующему:

procedure CreateDatabase(DataSourcePath: string);
const
InitStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=";
var
ADOX: Variant;
begin
ADOX := CreateOleObject("ADOX.Catalog");
try
ADOX.Create(InitStr + DataSourcePath);
except
on e: EOleException do
( "Can""t create database!") Копание в MSDN привело к следующему:

procedure CreateDatabase(DataSourcePath: string);
const
InitStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=";
var
ADOX: Variant;
begin
ADOX := CreateOleObject("ADOX.Catalog");
try
ADOX.Create(InitStr + DataSourcePath);
except
on e: EOleException do
ShowMessage("Can""t create database!");
end;
end;

Всем спасибо за помощь...



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

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

Наверх




Память: 0.47 MB
Время: 0.021 c
3-68206
AndreyP
2003-07-25 09:11
2003.08.21
Год из даты в SQL запросе


14-68478
DiamondShark
2003-08-05 14:34
2003.08.21
Навеяно веткой про самолёт


3-68243
lereve
2003-07-25 20:22
2003.08.21
подскажите пож-та как лучше копирнуть данные из TClientDataSet


1-68391
Igor Popov
2003-08-07 03:32
2003.08.21
Как создать контекстную справку для компонентов на форме?


4-68588
Борис К.
2003-06-18 11:17
2003.08.21
Проблема с ProgressBar и копированием файлов под XP...