Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.03.2009, 15:19   #1
Bayazet
Форумчанин
 
Регистрация: 08.12.2008
Сообщений: 156
По умолчанию динамическое создание базы

база .db, paradox7. Мне необходимо програмно создать ее с некоторыми полями. я делаю так:
Код:
procedure CreateTable(Way : string);
  var
    fld : TField;
begin
  MF.tMainTable.CreateTable;
  MF.tMainTable.TableName := Way;
  fld := TField.Create(nil);
    fld.Name := 'ID';
    fld.DataType := ftInteger;
  MF.tMainTable.Fields.Add(fld);
    fld.Name := 'KN';
    fld.DataType := ftString;
    fld.DataSize := 20;
  MF.tMainTable.Fields.Add(fld);
    fld.Name := 'Adress';
    fld.DataType := ftString;
    fld.DataSize := 50;
  MF.tMainTable.Fields.Add(fld);
    fld.Name := 'Owner';
    fld.DataType := ftString;
    fld.DataSize := 30;
  MF.tMainTable.Fields.Add(fld);
    fld.Name := 'DocArea';
    fld.DataType := ftFloat;
    fld.DataSize := 0;
    
........
  MF.tMainTable.KeyFieldCount := 1;
  MF.tMainTable.SetKey; 
end;
ругается на fld.DataType := ftInteger;, пишет, не могу записать в readonly property..
подскажите, как правильно создавать ее?
Bayazet вне форума Ответить с цитированием
Старый 13.03.2009, 16:18   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

А что хелп уже отменили?
в хелпе для CreateTable есть чудеснейший пример, там все описано четко и понятно. Вот туда и смотри.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 13.03.2009, 16:28   #3
фЁдОр
Форумчанин
 
Аватар для фЁдОр
 
Регистрация: 06.09.2007
Сообщений: 908
По умолчанию

ого-го какой код! а ведь запросом намного проще.
Bayazet, на верху в этом разделе скачайте справочник по SQL-лу и увидите насколько это проще, чем нежели вы предложили
фЁдОр вне форума Ответить с цитированием
Старый 17.03.2009, 15:54   #4
Bayazet
Форумчанин
 
Регистрация: 08.12.2008
Сообщений: 156
По умолчанию

а можно простейший примерчик по созданию базы через sql запрос?
создать таблицу с автоикриментным полем 'ID' и Alpha полем 'FIO'. а там дальше я разберусь
Bayazet вне форума Ответить с цитированием
Старый 18.03.2009, 14:01   #5
Bayazet
Форумчанин
 
Регистрация: 08.12.2008
Сообщений: 156
По умолчанию

создаю базу след способом:
Код:
procedure InitTable;
begin
  With MF.qMainTable.SQL do
  begin
    Clear;
    Add('create table Otvody');
    Add('  (');
    Add('  ID LongInteger NOT NULL PRIMARY KEY');
    Add('  KN Alpha(20)');
    Add('  Adress Alpha(50)');
    Add('  Owner Alpha(30)');
    Add('  DocArea Number');
    Add('  TypeOfLand Alpha(30)');
    Add('  TypeOfUse Alpha(30)');
    Add('  DeltaP Number');
    Add('  #DotCount LongInteger NOT NULL');
    Add('  #Area Number NOT NULL');
    Add('  #Perimetr Number NOT NULL');
    Add('  UsingDocs Alpha(254)');
    Add('  ReqDocs Alpha(254)');
    Add('  MetDefCoord Alpha(60)');
    Add('  HCh_KN Alpha(254)');
    Add('  HCh_Area Alpha(254)');
    Add('  HT_OpisZakrTochki Alpha(254)');
    Add('  HT_OpisProhChastiGr Alpha(254)');
    Add('  HT_Primechanie Alpha(254)');
    Add('  HCh_Harakteristika Alpha(254)');
    Add('  Iskl_KN Alpha(254)');
    Add('  NNedvighimosti Alpha(254)');
    Add('  InyeSved Alpha(40)');
    Add('  KNkotorym Alpha(20)');
    Add('  KNSmeghn Alpha(254)');
    Add('  InfoSmeghn Alpha(254)');
    Add('  BinData Binary NOT NULL');
    Add('  UNIQUE (ID)');
    Add('  );');
  end;
end;
возникает вопрос: до этого я использовал базу, сделанную руками в дбдестктопе, соотв. различные алиасы в tTable, tQuery, tDBGrid и tDataSource задавал из инспектора объектов.
как и какие пути на таблицу мне необъ. указать при динамическом создании?
Bayazet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Динамическое создание объектов Костян Пират Общие вопросы Delphi 12 24.05.2011 18:39
Динамическое создание событий Fandaret Общие вопросы Delphi 4 14.05.2009 04:20
Динамическое создание формы Rifler Общие вопросы Delphi 6 11.09.2008 20:50
Динамическое создание объекта ANGa Помощь студентам 3 10.04.2008 18:14
Динамическое создание объекта Fruit Общие вопросы Delphi 5 24.01.2008 11:00