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

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

Создаеие бд MS access во время выполнения без ОБЯЗАТЕЛЬНЫХ ПОЛЕЙ


Страницы:   1 2

Максим ©   (2013-04-08 19:09:00) 

Приветствую.
У меня проблема, понятная из шапки. Все прекрасно работает, но при открытие в Access все поля обязательны для заполнения. как избежать этого, что записать и куда.


clickmaker   (2013-04-08 19:59:00) [21]

Properties['Jet OLEDB:Allow Zero Length'].Value := true ?


Максим   (2013-04-08 19:54:00) [22]


> clickmaker ©   (08.04.13 19:41) [5]
> > 'Required' выставлял в trueтак выставлять надо в false

было в false


clickmaker   (2013-04-08 19:41:00) [23]

> 'Required' выставлял в true

так выставлять надо в false


Медвежонок Пятачок   (2013-04-08 19:38:00) [24]

искать свойство нуллабел или похожее по смыслу


Максим   (2013-04-08 19:34:00) [25]

'Required' выставлял в true. все по прежднему.


clickmaker   (2013-04-08 19:18:00) [26]

а чего-нить типа Properties['Required'] или Properties['Mandatory'] нету?


Максим   (2013-04-08 19:13:00) [27]

вот код.
procedure TForm2.Button1Click(Sender: TObject);
var
 TableManom:_Table;       //МАНОМЕТРЫ
 TableOborud:_Table;      //ОБОРУДОВАНИЕ
 Column: _Column;
begin
Close;
  Form1.SaveDialog1.FileName := Form2.Edit1.Text;
   if Form1.SaveDialog1.Execute then
   else Exit;

 // Создание базы данных
 Catalog   := CoCatalog.Create;

 Catalog.Create('Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+Form1.SaveDialog1.FileName);
 Catalog.Set_ActiveConnection('Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+Form1.SaveDialog1.FileName);

begin
 // Создание таблицы ОБОТУДОВАНИЯ
 TableOborud := CoTable.Create;
 TableOborud.Name      := 'Оборудование';
 TableOborud.ParentCatalog := Catalog;

 // Создать ключевое поле
 Column := CoColumn.Create;
 with Column do
   begin
     ParentCatalog := Catalog;
     Name    := 'Key1';
     Type_   := adInteger;
      Properties['Autoincrement'].Value := True;
      Properties['Description'].Value    := 'Ключевое поле';
   end;

 // Добавить поле к таблице
 TableOborud.Columns.Append(Column, 0, 0);
 Column := Nil;

 // Создаём ещё несколько полей
 with TableOborud.Columns do
   begin
     Append('Оборудование', adVarWChar, 12);
     end;
end;

begin
// Создание таблицы МАНОМЕТРЫ
TableManom := CoTable.Create;
TableManom.Name      := 'Манометры';
TableManom.ParentCatalog := Catalog;

// Создать ключевое поле
Column := CoColumn.Create;
with Column do
 begin
   ParentCatalog := Catalog;
  Name    := 'Key1';
  Type_   := adInteger;
  Properties['Autoincrement'].Value := True;
  Properties['Description'].Value    := 'Ключевое поле';
  end;

  // Добавить поле к таблице
TableManom.Columns.Append(Column, 0, 0);
Column := Nil;

// Создаём ещё несколько полей
with TableManom.Columns do
 begin
  Append('Тип', adInteger, 100);
  Append('Среда', adInteger, 100);
  Append('Оборудование', adInteger, 100);
  Append('Давление', adInteger, 100);
  Append('Еденица_измерения', adInteger, 100);
  Append('Диаметр', adInteger, 100);
  Append('Класс_точности', adInteger, 100);
  Append('Номер', adVarWChar, 10);
  Append('Комментарий', adVarWChar, 55);
  Append('Состояние', adInteger, 100);
  Append('Поверка', adInteger, 100);
 end;
 end;

// Добавить таблицу к базе данных
Catalog.Tables.Append(TableManom);
Catalog.Tables.Append(TableOborud);


end;


Страницы:   1 2

Наверх

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