Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как создать базу данных используя KOLEdb?


Vitalon ©   (2003-09-07 00:44:00) 

Речь идет не о создании таблицы в существующей базе (к оператору CREATE TABLE претензий нет - все работает) а именно новый файл типа FileName.mdb:
QR.Text:='CREATE DATABASE ' + GetStartDir+ 'FileName.mdb';
QR.Execute;
- не работает. Или, может, есть какие-то другие средства для этого?


savva   (2003-09-08 11:10:00) [1]

забыл сказать - к KOLOleDB это никакого отношения не имеет...


savva   (2003-09-08 11:07:00) [2]

смотри на UBPFD http://delphibase.endimus.com/?action=viewfunc&topic=baseaccess&id=10340

правда я с того времени ее усовершенствовал..

function CreateDatabase(DatabaseName:String;Access2000Format:boolean=false):boolean;
var
 DBEngine, Workspace: Variant;
const
 dbLangGeneral = ';LANGID=0x0409;CP=1252;COUNTRY=0';
 dbVersion30 = 32;
 dbVersion40 = 64;

begin
 result:=false;
 try
   try
       DBEngine := CreateOleObject('DAO.DBEngine.36');
   except
     try {For DAO 3.5}
       DBEngine := CreateOleObject('DAO.DBEngine.35');
     except
raise;
     end;
   end;
   Workspace := DBEngine.Workspaces[0];
   try
   if Access2000Format then
     Workspace.CreateDatabase(DatabaseName, dbLangGeneral, dbVersion40)
   else
     Workspace.CreateDatabase(DatabaseName, dbLangGeneral, dbVersion30);
   except on e0:EOleException do
     ShowMessage(e0.Message);
   end;
 except on e1:EOleException do
   ShowMessage(e1.Message);
 end;
 result:=true;
end;

пример использования:
procedure TForm1.Button1Click(Sender: PObj);
begin
CoInitialize(nil);
  CreateDatabase('Test.mdb',true);
CoUninitialize;
end;

не забудь написать
uses
 ActiveX,KOLComObj;


Кладов   (2003-09-07 07:06:00) [3]

Создать файл на диске (например, из ресурса) и поименовать.


Наверх

Титульная страница Поиск, карта сайта Написать письмо