![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Вопрос по ADO и mdb [D7, XP]
Barsky © (2006-02-03 14:33:00)Только что научился открывать таблицы в mdb при помощи ADO.
Сразу 2 вопроса:
1. Как создать базу данных в runtime?
2. Смогут ли работать несколько человек одновременно с одной таблицей/базой?
YurikGL (2006-02-03 23:09:00) [1]
> 2. Смогут ли работать несколько человек одновременно с одной
> таблицей/базой?
Попробуй... запусти два приложения и поработай из них с базой...
Практика - один из лучших критериев истины.
palva (2006-02-03 22:18:00) [2]Если таблицы не создавать, т.е. пустую базу и для русского языка, то можно так:
uses Dialogs, ComObj, ActiveX;
function CreateDatabase(DatabaseName: string): boolean;
var
DBEngine, Workspace: Variant;
const
dbLangGeneral = ';LANGID=0x0409;CP=1252;COUNTRY=0';
dbLangCyrillic = ';LANGID=0x0419;CP=1251;COUNTRY=0';
dbVersion20 = 32;
dbVersion30 = 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
Workspace.CreateDatabase(
DatabaseName,
dbLangCyrillic + ';CollatingOrder=1049',
dbVersion30);
result := true;
except on e0: EOleException do
ShowMessage(e0.Message);
end;
except on e1: EOleException do
ShowMessage(e1.Message);
end;
end;
begin
CoInitialize(nil);
if CreateDatabase('Base777') then ShowMessage('OK')
else ShowMessage('Error')
end.
Barsky (2006-02-03 21:46:00) [3]ап