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


Автор: hllh 17.10.2004, 15:35
Как создать файл базы данных во время работы приложения и сохранить его на винчестере. :sample

Автор: Alex 17.10.2004, 16:20
Какую базу данных используешь?
Для InterBase:
Цитата
The following statement creates a database in the current directory:

CREATE DATABASE "employee.gdb";

The next statement creates a database with a page size of 2048 bytes rather than the default of 1024:

CREATE DATABASE "employee.gdb" PAGE_SIZE 2048;

The following statement creates a database stored in two files and specifies its default character set:

CREATE DATABASE "employee.gdb"
DEFAULT CHARACTER SET "ISO8859_1"
FILE "employee.gd1" STARTING AT PAGE 10001 LENGTH 10000 PAGES;

Автор: Cashey 17.10.2004, 16:47
На Delphi, примерно так:
Код

with DM1.Table1 do
   begin
   Active := false;
   DataBaseName := 'MyBase';
   TableType := ttParadox;
   TableName := 'MyTable';
   with FieldDefs do
       begin
       with AddFieldsDef do
        // Добавляем поля
            begin
            Name := 'ID';
            DataType := ftAutoInc;
            Required := true;
            end;
       end;
   CreateTable;
   end;
end;

Автор: Medved 18.10.2004, 02:27
DRKB.

Автор: Akella 18.10.2004, 08:36
Код
   tNew.FieldDefs.Clear;
   tNew.IndexDefs.Clear;
   tNew.FieldDefs.Clear;
   tNew.TableName:='Apteka.db';
   tNew.TableType:=ttDefault;
   tNew.FieldDefs.Add('AID',ftAutoInc);
   tNew.FieldDefs.Add('AName',ftString,20,False);
   tNew.FieldDefs.Add('AAddres',ftString,40,False);
   tNew.FieldDefs.Add('ATel',ftString,40,False);
   tNew.FieldDefs.Add('AMAIL',ftString,30,False);
   tNew.FieldDefs.Add('AFA',ftString,10,False);
   tNew.IndexDefs.Add('','AID',[ixPrimary]);
   tNew.IndexDefs.Add('idxAName','AName',[ixCaseInsensitive]);
   tNew.IndexDefs.Add('idxAAddres','AAddres',[ixCaseInsensitive]);
   tNew.IndexDefs.Add('idxATel','ATel',[ixCaseInsensitive]);
   tNew.IndexDefs.Add('idxAMail','AMail',[ixCaseInsensitive]);
   tNew.IndexDefs.Add('idxAFA','AFA',[ixCaseInsensitive]);
   tNew.CreateTable;

Автор: kucik 8.1.2005, 17:56
А теперь такой же примерчик для связки ADO + Access получить можно?
p.s. Нужно создать Новую БД с такими же таблицами как в старой! smile
(Копирование и удаление всех записей не подойдёт, т.к. Автоинкрементные поля запоминают кол-во бывших записей и начинают считать не с 1, а с кол-ва бывших (добавленных) записей smile

Автор: Vit 9.1.2005, 01:19
http://forum.vingrad.ru/index.php?act=module&module=vingradfaq&article=1725

Автор: kucik 9.1.2005, 01:44
Спасибки
Вопрос исчерпан, практически!

Автор: dvs 9.1.2005, 02:32
Просветите, пожайлуста.
Не могу осознать, как программно создать базу данных для InterBase.
Какая должна быть последовательность действий?
Изначально нет зарегистрированной базы, её надо создать. Как? smile

Автор: Pakshin A. S. 9.1.2005, 12:05
параграф "Работа с удаленными базами данных на примере InterBase"

http://pakshin.com.ru/forum/index.php?showtopic=31&st=0&#entry123

может поможет... smile

Автор: dvs 9.1.2005, 18:38
Да, нашел в себе еще одно недостающее качество: я не умею правильно формулировать вопросы. Наверное, это есть причина того, что мне на них не отвечают. smile
Постараюсь не забыть рассказать, что же мне надо было, когда разберусь. ;)

Автор: dvs 10.1.2005, 03:05
А оказалось, что мне надо было увидеть http://delphiworld.narod.ru/base/ib_mk_db_exe_sql.html

Вывод: "Бесплатный сыр только в мышеловке".

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