Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Invalid use of keyword. Token: ALTER, немогу изменить размер поля 
:(
    Опции темы
koanni
Дата 3.7.2008, 12:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 3.8.2007

Репутация: нет
Всего: нет



Код

procedure TRestrForm.Button1Click(Sender: TObject);
var
  SQL: TQuery;
begin
  SQL:=TQuery.Create(NIL);
  try
    SQL.DataBaseName:='UIM';
    SQL.SQL.Add('ALTER TABLE "sett.db" ALTER COLUMN nota VARCHAR(5)');
    SQL.ExecSQL
  finally
    SQL.Free
  end
end;


немогу изменить размер поля, пишет ошибку на втором ALTER "Invalid use of keyword. Token: ALTER"
как исправить?
PM MAIL ICQ   Вверх
Frees
Дата 3.7.2008, 12:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2233
Регистрация: 2.12.2005
Где: Екатеринбург

Репутация: 23
Всего: 54



Я правдо не знаю что за СУБД
но может так:
Код

 SQL.SQL.Add('ALTER TABLE "sett.db" ALTER nota TYPE VARCHAR(5)');



--------------------
Кольцов Виктор Владимирович
PM MAIL ICQ   Вверх
koanni
Дата 3.7.2008, 13:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 3.8.2007

Репутация: нет
Всего: нет



Frees, туже самую ошибку выдает

СУБД BDE+Paradox

Добавлено через 9 минут и 43 секунды
Есть еще вариант описанный здесь
но там моя делфи ругается на "CBRType" и "BDECheck" говорит что "Undeclared identifier", откуда их брать?
PM MAIL ICQ   Вверх
Akella
Дата 3.7.2008, 21:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 29
Всего: 329



LocalSQL не поддерживает ALTER TABLE

Добавлено через 29 секунд
делай средствами TTable, на форуме есть готовые коды, я сам выкладывал

Добавлено через 1 минуту и 26 секунд
и вообще, зачем тебе парадокс, используй что-то помщнее, например Firebird или MySQL,

Добавлено через 3 минуты и 53 секунды
можешь даже взять MS SQL 2005 express, он бесплатен
PM MAIL   Вверх
koanni
Дата 4.7.2008, 08:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 3.8.2007

Репутация: нет
Всего: нет



Akella

Цитата(Akella @  3.7.2008,  21:42 Найти цитируемый пост)
делай средствами TTable, на форуме есть готовые коды, я сам выкладывал

Ваш код я не нашел, если не трудно дайте ссылку.

а по поводу второго варианта, есть предложения? чего не хватает в uses?

Цитата(Akella @  3.7.2008,  21:42 Найти цитируемый пост)
и вообще, зачем тебе парадокс, используй что-то помщнее, например Firebird или MySQL

в ближайшем будущем перейду на FireBird
PM MAIL ICQ   Вверх
Vas
Дата 4.7.2008, 10:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 830
Регистрация: 29.6.2005
Где: Stavropol region

Репутация: 23
Всего: 28



Цитата(koanni @  4.7.2008,  08:26 Найти цитируемый пост)
в ближайшем будущем перейду на FireBird 

Сразу переходите, иначе потом придется весь готовый проект переделывать smile


--------------------
И опыт, сын ошибок трудных, И гений, парадоксов друг, И случай, бог изобретатель. ... (А.С. Пушкин)
PM MAIL   Вверх
Akella
Дата 5.7.2008, 18:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 29
Всего: 329



этому коду уже года 4, так что.....

Код

Function TfmMain.NewDBExport(vPathDBExport:String; TableName:String):Bool;//создание новой БД
Var
 q:integer;
begin//копирование записей в новую таблицу
 try
   sb2.Panels[0].Text:='Создание новой таблицы...';
   application.ProcessMessages;
   result:=false;
   Cur(cS);
    if(ActiveControl is TDBGridEh)and((ActiveControl as TDBGridEh).Name='DBGridApt') then begin
      tNew.FieldDefs.Clear;
      tNew.IndexDefs.Clear;
      tNew.DatabaseName:=vPathDBExport;
      tNew.TableName:=TableName+'.dbf';
      tNew.TableType:=ttDBase;
      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.CreateTable;
      tNew.Open;
      for q:=0 to (ActiveControl as TDBGridEh).SelectedRows.Count-1 do begin//пробежка по таблице
        //переходим к закладке
        (ActiveControl as TDBGridEh).DataSource.DataSet.GotoBookmark(pointer((ActiveControl as TDBGridEh).SelectedRows.Items[q]));
        tNew.Append;
        tNew.FieldByName('AName').AsString:=tAptAName.AsString;
        tNew.FieldByName('AAddres').AsString:=tAptAAddres.AsString;
        tNew.FieldByName('ATel').AsString:=tAptATel.AsString;
        tNew.FieldByName('AMail').AsString:=tAptAMail.AsString;
        tNew.FieldByName('AFa').AsString:=tAptAFA.AsString;
        tNew.Post;
      end;//for
    end;//if(ActiveControl is TDBGridEh)and((ActiveControl as TDBGridEh).Name='DBGridApt') then begin
    //таблица препаратов
//((ActiveControl as TDBGridEh).DataSource.DataSet as TTable).TableName;
    if(ActiveControl is TDBGridEh)and((ActiveControl as TDBGridEh).Name='DBGridPrep') then begin
      tNew.FieldDefs.Clear;
      tNew.IndexDefs.Clear;
      tNew.TableName:=TableName+'.dbf';
      tNew.TableType:=ttDBase;
      tNew.FieldDefs.Add('PName',ftString,100);
      tNew.FieldDefs.Add('PProducer',ftString,30);
      tNew.FieldDefs.Add('PPrice',ftString,30);
      tNew.FieldDefs.Add('PDateTime',ftString,30);
      tNew.FieldDefs.Add('PApt',ftString,30);
      tNew.CreateTable;
      tNew.Open;
      for q:=0 to (ActiveControl as TDBGridEh).SelectedRows.Count-1 do begin//пробежка по таблице
        //переходим к закладке
        (ActiveControl as TDBGridEh).DataSource.DataSet.GotoBookmark(pointer((ActiveControl as TDBGridEh).SelectedRows.Items[q]));
        tNew.Append;
        tNew.FieldByName('PName').AsString:=tPrepPName.AsString;
        tNew.FieldByName('PProducer').AsString:=tPrepPProducer.AsString;
        tNew.FieldByName('PPrice').AsString:=tPrepPPrice.AsString;
        tNew.FieldByName('PDateTime').AsString:=tPrepPDateTime.AsString;
        tNew.FieldByName('PApt').AsString:=tPrepPApt.AsString;
        tNew.Post;
      end;//for
    end;//if(ActiveControl is TDBGridEh)and((ActiveControl as TDBGridEh).Name='DBGridApt') then begin
    if(ActiveControl is TDBGridEh)and((ActiveControl as TDBGridEh).Name='DBGridZay') then begin
      tNew.FieldDefs.Clear;
      tNew.IndexDefs.Clear;
      tNew.TableName:=TableName+'.dbf';
      tNew.TableType:=ttDBase;
      tNew.FieldDefs.Add('ZID',ftInteger);//№ п/п
      tNew.FieldDefs.Add('ZApt',ftInteger);
      tNew.FieldDefs.Add('ZName',ftString,100);
      tNew.FieldDefs.Add('ZPrice',ftString,30);
      tNew.FieldDefs.Add('ZAmount',ftString,30);
      tNew.FieldDefs.Add('ZProducer',ftString,30);
      tNew.FieldDefs.Add('ZApteka',ftString,20);
      tNew.FieldDefs.Add('ZDate',ftString,30);
      tNew.FieldDefs.Add('ZFilial',ftInteger);
      tNew.CreateTable;
      tNew.Open;
      for q:=0 to (ActiveControl as TDBGridEh).SelectedRows.Count-1 do begin//пробежка по таблице
        //переходим к закладке
        (ActiveControl as TDBGridEh).DataSource.DataSet.GotoBookmark(pointer((ActiveControl as TDBGridEh).SelectedRows.Items[q]));
        tNew.Append;
        tNew.FieldByName('ZID').AsInteger:=tZayZID.AsInteger;
        tNew.FieldByName('ZApt').AsInteger:=tZayZApt.AsInteger;
        tNew.FieldByName('ZName').AsString:=tZayZName.AsString;
        tNew.FieldByName('ZAmount').AsString:=tZayZAmount.AsString;
        tNew.FieldByName('ZProducer').AsString:=tZayZProducer.AsString;
        tNew.FieldByName('ZPrice').AsString:=tZayZPrice.AsString;
        tNew.FieldByName('ZDate').AsString:=tZayZDate.AsString;
        tNew.FieldByName('ZFilial').AsString:=tZayZFilial.AsString;
        tNew.FieldByName('ZApteka').AsString:=tZayZApteka.AsString;
        tNew.Post;
      end;//for
    end;//if(ActiveControl is TDBGridEh)and((ActiveControl as TDBGridEh).Name='DBGridApt') then begin


    if(ActiveControl is TDBGridEh)and((ActiveControl as TDBGridEh).Name='DBGridFilt') then begin
      tNew.FieldDefs.Clear;
      tNew.IndexDefs.Clear;
      tNew.TableName:=TableName+'.dbf';
      tNew.TableType:=ttDBase;
      tNew.FieldDefs.Add('FID',ftInteger);//№ п/п
      tNew.FieldDefs.Add('FName',ftString,100);
      tNew.CreateTable;
      tNew.Open;
      for q:=0 to (ActiveControl as TDBGridEh).SelectedRows.Count-1 do begin//пробежка по таблице
        //переходим к закладке
        (ActiveControl as TDBGridEh).DataSource.DataSet.GotoBookmark(pointer((ActiveControl as TDBGridEh).SelectedRows.Items[q]));
        tNew.Append;
        tNew.FieldByName('FID').AsInteger:=(ActiveControl as TDBGridEh).DataSource.DataSet.FieldByName('FID').AsInteger;
        tNew.FieldByName('FName').AsString:=(ActiveControl as TDBGridEh).DataSource.DataSet.FieldByName('FName').AsString;
        tNew.Post;
      end;//for
    end;//if(ActiveControl is TDBGridEh)and((ActiveControl as TDBGridEh).Name='DBGridApt') then begin

    tNew.Close;
    Cur(cD);
    result:=true;
  except
    tNew.Close;
    Cur(cD);
    result:=False;
    ShowMessage('Ошибка при создании таблиц БД');
  end;//try-except
end;



Добавлено через 1 минуту и 33 секунды
вот ещёто-то нашёл
Код

procedure TfmMain.actServCreateDBExecute(Sender: TObject);
Var
 sPathForNewDB:String;
begin//создание новой БД
 sPathForNewDB:=ExtractFilePath(ParamStr(0))+'data';
 try
  fmSelFilesDB:=TfmSelFilesDB.Create(self);
  if fmSelFilesDB.ShowModal=mrOk then begin
    if MessageDlg('Будет создана новая база данных!'+#13+
    'Продолжить?', mtConfirmation, [mbYes, mbNo], 0) = mrNo then begin
       FreeAndNil(fmSelFilesDB);
       Exit;
    end;//if
    if SelectDirectory('ВЫБЕРИТЕ КАТАЛОГ ДЛЯ ХРАНЕНИЯ'+#13+
    'НОВОЙ БАЗЫ ДАННЫХ','', sPathForNewDB)=False then begin
          FreeAndNil(fmSelFilesDB);
          Exit;
     end;//if
     if (FileExists(sPathForNewDB+'\Apteka.db')) OR (FileExists(sPathForNewDB+'\Zayavka.db')) then
       if MessageDlg('Файлы БД будут перезаписаны!'+#13+
        'Продолжить?', mtConfirmation, [mbYes, mbNo], 0) = mrNo then begin
          FreeAndNil(fmSelFilesDB);
          Exit;
        end;//if
  Cur(cS);
  DB.Connected:=False;
  tNew.Close;
  tNew.DatabaseName:=sPathForNewDB;
  //создаем справочник аптек
  if fmSelFilesDB.cbCreateApt.Checked then begin
    tNew.FieldDefs.Clear;
    tNew.IndexDefs.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;
  end;//if
  //справочник Филиалов
  if fmSelFilesDB.cbCreateFilials.Checked then begin
    tNew.FieldDefs.Clear;
    tNew.IndexDefs.Clear;
    tNew.TableName:='Filial.db';
    tNew.TableType:=ttDefault;
    tNew.FieldDefs.Add('FlID',ftAutoInc);
    tNew.FieldDefs.Add('FlName',ftString,20,False);
    tNew.FieldDefs.Add('FlAddres',ftString,40,False);
    tNew.FieldDefs.Add('FlTel',ftString,40,False);
    tNew.IndexDefs.Add('','FlID',[ixPrimary]);
    tNew.IndexDefs.Add('idxFlName','FlName',[ixCaseInsensitive]);
    tNew.IndexDefs.Add('idxFlAddres','FlAddres',[ixCaseInsensitive]);
    tNew.IndexDefs.Add('idxFlTel','FlTel',[ixCaseInsensitive]);
    tNew.CreateTable;
  end;//if
  //таблица групп
  if fmSelFilesDB.cbCreateGroup.Checked then begin
    tNew.FieldDefs.Clear;
    tNew.IndexDefs.Clear;
    tNew.TableName:='FilterPrep.db';
    tNew.TableType:=ttDefault;
    tNew.FieldDefs.Add('FID',ftAutoInc);
    tNew.FieldDefs.Add('FName',ftString,30,False);
    tNew.IndexDefs.Add('','FID',[ixPrimary]);
    tNew.IndexDefs.Add('idxFName','FName',[ixCaseInsensitive]);
    tNew.CreateTable;
  end;//if
  //таблица препаратов
  if fmSelFilesDB.cbCreatePrep.Checked then begin
    tNew.FieldDefs.Clear;
    tNew.IndexDefs.Clear;
    tNew.TableName:='Preparat.DB';
    tNew.TableType:=ttDefault;
    tNew.FieldDefs.Add('PID',ftAutoInc);
    tNew.FieldDefs.Add('PName',ftString,100,False);
    tNew.FieldDefs.Add('PProducer',ftString,30,False);
    tNew.FieldDefs.Add('PPrice',ftFloat);
    tNew.FieldDefs.Add('PDateTime',ftDateTime);
    tNew.FieldDefs.Add('PApt',ftInteger);
    tNew.FieldDefs.Add('Code',ftString,30,False);
    tNew.IndexDefs.Add('','PID',[ixPrimary]);
    tNew.IndexDefs.Add('idxPApt','PApt',[ixCaseInsensitive]);
    tNew.IndexDefs.Add('idxPNamePPrice','PName;PPrice',[ixCaseInsensitive]);
    tNew.IndexDefs.Add('idxPDateTimeDesc','PDateTime',[ixCaseInsensitive, ixDescending]);
    tNew.IndexDefs.Add('idxPPricePName','PPrice;PName',[ixCaseInsensitive]);
    tNew.IndexDefs.Add('idxPProducer','PProducer',[ixCaseInsensitive]);
    tNew.CreateTable;
  end;//if
  //таблица заявок
  if fmSelFilesDB.cbCreateZay.Checked then begin
    tNew.FieldDefs.Clear;
    tNew.IndexDefs.Clear;
    tNew.TableName:='Zayavka.db';
    tNew.TableType:=ttDefault;
    tNew.FieldDefs.Add('ZID',ftAutoInc);
    tNew.FieldDefs.Add('ZApt',ftInteger);
    tNew.FieldDefs.Add('ZName',ftString,100,False);
    tNew.FieldDefs.Add('ZPrice',ftFloat);
    tNew.FieldDefs.Add('ZAmount',ftFloat);
    tNew.FieldDefs.Add('ZProducer',ftString,30,False);
    tNew.FieldDefs.Add('ZApteka',ftString,20,False);
    tNew.FieldDefs.Add('ZDate',ftDate);
    tNew.FieldDefs.Add('ZFilial',ftInteger);
    tNew.FieldDefs.Add('ZCode',ftString,30,False);
    tNew.IndexDefs.Add('','ZID',[ixPrimary]);
    tNew.IndexDefs.Add('idxZApt','ZApt',[ixCaseInsensitive]);
    tNew.IndexDefs.Add('idxZAptZAmount','ZApt;ZAmount',[ixCaseInsensitive]);
    tNew.IndexDefs.Add('idxZAptZApteka','ZApt;ZApteka',[ixCaseInsensitive]);
    tNew.IndexDefs.Add('idxZAptZName','ZApt;ZName',[ixCaseInsensitive]);
    tNew.IndexDefs.Add('idxZAptZPrice','ZApt;ZPrice',[ixCaseInsensitive]);
    tNew.IndexDefs.Add('idxZAptZProducer','ZApt;ZProducer',[ixCaseInsensitive]);
    tNew.IndexDefs.Add('idxZAptZDateDesc','ZApt;ZDate',[ixCaseInsensitive, ixDescending]);
    tNew.IndexDefs.Add('idxZAptZFilial','ZApt;ZFilial',[ixCaseInsensitive]);
    tNew.IndexDefs.Add('idxZAptZID','ZApt;ZID',[ixCaseInsensitive]);
    tNew.CreateTable;
  end;//if
  //временная таблица
  if fmSelFilesDB.cbCreateTemp.Checked then begin
    tNew.FieldDefs.Clear;
    tNew.IndexDefs.Clear;
    tNew.TableName:='Temp.DB';
    tNew.TableType:=ttDefault;
    tNew.FieldDefs.Add('TID',ftAutoInc);
    tNew.FieldDefs.Add('TName',ftString,100,False);
    tNew.FieldDefs.Add('TPrice',ftFloat);
    tNew.FieldDefs.Add('TProducer',ftString,30,False);
    tNew.FieldDefs.Add('TApt',ftInteger);
    tNew.FieldDefs.Add('Code',ftString,30,False);
    tNew.IndexDefs.Add('','TID',[ixPrimary]);
    tNew.CreateTable;
  end;//if
  //таблица реквизитов
  if fmSelFilesDB.cbCreateRekv.Checked then begin
    tNew.FieldDefs.Clear;
    tNew.IndexDefs.Clear;
    tNew.TableName:='Rekv.db';
    tNew.TableType:=ttDefault;
    tNew.FieldDefs.Add('RID',ftAutoInc);
    tNew.FieldDefs.Add('RName',ftString,100,False);
    tNew.FieldDefs.Add('RAddress',ftString,100,False);
    tNew.FieldDefs.Add('RTel',ftString,100,False);
    tNew.FieldDefs.Add('REMail',ftString,50,False);
    tNew.FieldDefs.Add('ROKPO',ftString,10,False);
    tNew.FieldDefs.Add('RINN',ftString,20,False);
    tNew.FieldDefs.Add('RSvidNDS',ftString,10,False);
    tNew.FieldDefs.Add('RBank',ftString,100,False);
    tNew.FieldDefs.Add('RGorBank',ftString,50,False);
    tNew.FieldDefs.Add('RMFO',ftString,20,False);
    tNew.FieldDefs.Add('RRS',ftString,15,False);
    tNew.FieldDefs.Add('RLicenze',ftString,35,False);

    tNew.FieldDefs.Add('RNameUse',ftBoolean);
    tNew.FieldDefs.Add('RAddressUse',ftBoolean);
    tNew.FieldDefs.Add('RTelUse',ftBoolean);
    tNew.FieldDefs.Add('REMailUse',ftBoolean);
    tNew.FieldDefs.Add('ROKPOUse',ftBoolean);
    tNew.FieldDefs.Add('RINNUse',ftBoolean);
    tNew.FieldDefs.Add('RSvidNDSUse',ftBoolean);
    tNew.FieldDefs.Add('RBankUse',ftBoolean);
    tNew.FieldDefs.Add('RGorBankUse',ftBoolean);
    tNew.FieldDefs.Add('RMFOUse',ftBoolean);
    tNew.FieldDefs.Add('RRSUse',ftBoolean);
    tNew.FieldDefs.Add('RLicenzeUse',ftBoolean);
    tNew.IndexDefs.Add('','RID',[ixPrimary]);
    tNew.CreateTable;
  end;//if
  //справочник единиц измерения
  if fmSelFilesDB.cbCreateEd.Checked then begin
    tNew.FieldDefs.Clear;
    tNew.IndexDefs.Clear;
    tNew.TableName:='EdIzm.db';
    tNew.TableType:=ttDefault;
    tNew.FieldDefs.Add('EID',ftAutoInc);
    tNew.FieldDefs.Add('EName',ftString,10,False);
    tNew.IndexDefs.Add('','EID',[ixPrimary]);
    tNew.IndexDefs.Add('idxEName','EName',[ixCaseInsensitive]);
    tNew.CreateTable;
  end;//if
  //шапка накладной
  if fmSelFilesDB.cbCreateNakls.Checked then begin
    tNew.FieldDefs.Clear;
    tNew.IndexDefs.Clear;
    tNew.TableName:='Nakls.db';
    tNew.TableType:=ttDefault;
    tNew.FieldDefs.Add('NID',ftAutoInc);
    tNew.FieldDefs.Add('NNumber',ftInteger);
    tNew.FieldDefs.Add('NApt',ftInteger);
    tNew.FieldDefs.Add('NFilial',ftInteger);
    tNew.FieldDefs.Add('NDate',ftDate);
    tNew.IndexDefs.Add('','NID',[ixPrimary]);
    tNew.IndexDefs.Add('idxNApt','NApt',[ixCaseInsensitive]);
    tNew.IndexDefs.Add('idxNDate','NDate',[ixCaseInsensitive]);
    tNew.IndexDefs.Add('idxNFilial','NFilial',[ixCaseInsensitive]);
    tNew.IndexDefs.Add('idxNNumber','NNumber',[ixCaseInsensitive]);
    tNew.CreateTable;
  end;//if
  //тело накладной(детализация)
  if fmSelFilesDB.cbCreateNaklsDet.Checked then begin
    tNew.FieldDefs.Clear;
    tNew.IndexDefs.Clear;
    tNew.TableName:='NaklsDet.db';
    tNew.TableType:=ttDefault;
    tNew.FieldDefs.Add('NdID',ftAutoInc);
    tNew.FieldDefs.Add('NdMainID',ftInteger);
    tNew.FieldDefs.Add('NdNumber',ftInteger);
    tNew.FieldDefs.Add('NdSeries',ftString,20,False);
    tNew.FieldDefs.Add('NdName',ftString,100,False);
    tNew.FieldDefs.Add('NdEd',ftInteger);
    tNew.FieldDefs.Add('NdPrice',ftFloat);
    tNew.FieldDefs.Add('NdAmount',ftFloat);
    tNew.IndexDefs.Add('','NdID',[ixPrimary]);
    tNew.IndexDefs.Add('idxNdMainID','NdMainID',[ixCaseInsensitive]);
    tNew.IndexDefs.Add('idxNdMainIDNdAmount','NdMainID;NdAmount',[ixCaseInsensitive]);
    tNew.IndexDefs.Add('idxNdMainIDNdEd','NdMainID;NdEd',[ixCaseInsensitive]);
    tNew.IndexDefs.Add('idxNdMainIDNdName','NdMainID;NdName',[ixCaseInsensitive]);
    tNew.IndexDefs.Add('idxNdMainIDNdNumber','NdMainID;NdNumber',[ixCaseInsensitive]);
    tNew.IndexDefs.Add('idxNdMainIDNdPrice','NdMainID;NdPrice',[ixCaseInsensitive]);
    tNew.IndexDefs.Add('idxNdMainIDNdSeries','NdMainID;NdSeries',[ixCaseInsensitive]);
    tNew.CreateTable;
  end;//if
  if fmSelFilesDB.cbConnectAfterCreate.Checked then begin
    ConnectToDB(sPathForNewDB);
    try
      tApt.IndexName:='idxAName';
      tPrep.IndexName:='idxPPricePName';
      tZay.IndexName:='idxZApt';
      tFilterPrep.IndexName:='idxFName';
      tNaklsDet.IndexName:='idxNdMainID';
      tEdIzm.IndexName:='idxEName';
    except
      tApt.IndexName:='';
      tPrep.IndexName:='';
      tZay.IndexName:='';
      tFilterPrep.IndexName:='';
      tNaklsDet.IndexName:='';
      tEdIzm.IndexName:='';
    end;//try-except
  end;
  ShowMessage('База данных создана');
  end;//if
 finally
  Cur(cD);
  FreeAndNil(fmSelFilesDB);
 end;//try-finally
end;


PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.0568 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.