Модератор: Ural

Программирование БД

СООБЩЕНИЯ

# 

30 окт 2012, 17:55 

Ant писал(а):
Businka писал(а):БД буду записывать в ini файл


Первое, что приходит на ум - Я не знаю компонент, которые бы позволяли работать с базой в ini-файле.
Второе - практически однозначно такая работа будет значительно медленнее.

Ну и банальный вопрос - А ЗАЧЕМ???? Есть простой старый DBase III/IV (dbf), есть фоксовские базы, есть mdb... Зачем изобретать одноколесный велосипед?


Ну потому, что я вообще не могу разобраться в этих базах данных, с ini я уже придумала как сделать. А какиенибудь БД из перечисленных подходят под требования сверху, мной перечисленные???
Businka
 
Сообщения: 36
Зарегистрирован: Пт 07 сен 2012, 19:47

# 

30 окт 2012, 20:32 

Businka писал(а):Ну потому, что я вообще не могу разобраться в этих базах данных


А что именно не понятно? Идея - очень простая. Есть база данных - что-то наподобие книги Excel, в ней есть таблички - примерно как листы Excel...

Businka писал(а):с ini я уже придумала как сделать.


ИМХО - не стоит на ini-файла делать телефонный справочник.

Businka писал(а):А какиенибудь БД из перечисленных подходят под требования сверху, мной перечисленные???


Ant писал(а):простой старый DBase III/IV (dbf), есть фоксовские базы, есть mdb


Любое из этого, и многое другое.
Аватара пользователя
Ant
 
Изображение
Сообщения: 1108
Зарегистрирован: Пн 27 авг 2007, 20:09

# 

30 окт 2012, 21:00 

А mdb разве не нужен Аксесс установленный в винде?
Businka
 
Сообщения: 36
Зарегистрирован: Пт 07 сен 2012, 19:47

# 

30 окт 2012, 21:10 

И вообще, есть ли у вас желание и возможность поучить меня немножечко БД. :) А то я тут надоедаю вам.
Businka
 
Сообщения: 36
Зарегистрирован: Пт 07 сен 2012, 19:47

# 

30 окт 2012, 21:14 

Businka писал(а):А mdb разве не нужен Аксесс установленный в винде?


https://www.google.com/search?q=mdb+%D1 ... 80&bih=881

Businka писал(а):И вообще, есть ли у вас желание и возможность поучить меня немножечко БД. :) А то я тут надоедаю вам.


На вопросы отвечу без проблем, на какие смогу. Учить - это ИМХО малость другое...
Аватара пользователя
Ant
 
Изображение
Сообщения: 1108
Зарегистрирован: Пн 27 авг 2007, 20:09

# 

1 ноя 2012, 20:27 

Если не сложно, можно написать пример работы на Delphi с БД DBase???
Т.е. как подключатся к БД, какие компоненты использовать (как их настроить). Хотелось бы увидеть основные функции работы с БД (создание таблицы, добавление и удаление записей и т.д.) :oops:
Businka
 
Сообщения: 36
Зарегистрирован: Пт 07 сен 2012, 19:47

# 

1 ноя 2012, 22:47 

Businka писал(а):как подключатся к БД, какие компоненты использовать (как их настроить)


http://www.snkey.net/books/delphi/ch4-3.html
http://progclub.ru/?param=book&name=del ... le=index16
Аватара пользователя
Ant
 
Изображение
Сообщения: 1108
Зарегистрирован: Пн 27 авг 2007, 20:09

# 

6 ноя 2012, 21:41 

Блиииин, что здесь не так? Идёт заполнение строчки в БД и это видно в DBGrid, а когда выполняется Form1.ClientDataSet1.Post, вся строка очищается и в БД записывается пустая строка.

:twisted:

Код: Выделить всё
procedure TForm2.Button1Click(Sender: TObject);
begin
  Form1.ClientDataSet1.Append; //Создаётся новая запись в конце списка и переходит в режим редактирования
  If Edit1.Text<>'' then Form1.ClientDataSet1['Number']:=Edit1.Text;
  If Edit2.Text<>'' then Form1.ClientDataSet1['SurName']:=Edit2.Text;
  If Edit3.Text<>'' then Form1.ClientDataSet1['FirstName']:=Edit3.Text;
  If Edit4.Text<>'' then Form1.ClientDataSet1['FatherName']:=Edit4.Text;
  If Edit5.Text<>'' then Form1.ClientDataSet1['Obrashenie']:=Edit5.Text;
  If Edit6.Text<>'' then Form1.ClientDataSet1['City']:=Edit6.Text;
  If Edit7.Text<>'' then Form1.ClientDataSet1['Area']:=Edit7.Text;
  If Edit8.Text<>'' then Form1.ClientDataSet1['Adress']:=Edit8.Text;
  Form1.ClientDataSet1['LegalPers']:=CheckBox1.Checked;
  Form1.ClientDataSet1['Qualific']:=ComboBox1.ItemIndex;
  Form1.ClientDataSet1['Status']:=ComboBox2.ItemIndex;
  If Edit10.Text<>'' then Form1.ClientDataSet1['DateReg']:=Edit10.Text;
  If ComboBox4.Items[0]<>'' then Form1.ClientDataSet1['HomePhone1']:=ComboBox4.Items[0];
  If ComboBox4.Items[1]<>'' then Form1.ClientDataSet1['HomePhone2']:=Combobox4.Items[1];
  If Combobox5.Items[0]<>'' then Form1.ClientDataSet1['ServicePhone1']:=Combobox5.Items[0];
  If Combobox5.Items[1]<>'' then Form1.ClientDataSet1['ServicePhone2']:=Combobox5.Items[1];
  If Combobox5.Items[2]<>'' then Form1.ClientDataSet1['ServicePhone3']:=Combobox5.Items[2];
  If Combobox6.Items[0]<>'' then Form1.ClientDataSet1['MobilePhone1']:=Combobox6.Items[0];
  If Combobox6.Items[1]<>'' then Form1.ClientDataSet1['MobilePhone2']:=Combobox6.Items[1];
  If Combobox6.Items[2]<>'' then Form1.ClientDataSet1['MobilePhone3']:=Combobox6.Items[2];
  If Combobox7.Items[0]<>'' then Form1.ClientDataSet1['ServiceMobile1']:=Combobox7.Items[0];
  If Combobox7.Items[1]<>'' then Form1.ClientDataSet1['ServiceMobile2']:=Combobox7.Items[1];
  If Combobox8.Items[0]<>'' then Form1.ClientDataSet1['EMail1']:=Combobox8.Items[0];
  If Combobox8.Items[2]<>'' then Form1.ClientDataSet1['EMail2']:=Combobox8.Items[2];
  If Combobox8.Items[3]<>'' then Form1.ClientDataSet1['EMail3']:=Combobox8.Items[3];
  If Combobox9.Items[0]<>'' then Form1.ClientDataSet1['Skype1']:=Combobox9.Items[0];
  If Combobox9.Items[1]<>'' then Form1.ClientDataSet1['Skype2']:=Combobox9.Items[1];
  If Combobox10.Items[0]<>'' then Form1.ClientDataSet1['ICQ1']:=Combobox10.Items[0];
  If Combobox10.Items[1]<>'' then Form1.ClientDataSet1['ICQ2']:=Combobox10.Items[1];
  Form1.ClientDataSet1['ProvInet']:=ComboBox3.ItemIndex;
  If Edit9.Text<>'' then Form1.ClientDataSet1['AccountNum']:=Edit9.Text;
  If Memo1.Lines[0]<>'' then Form1.ClientDataSet1['DopInfo1']:=Memo1.Lines[0];
  If Memo1.Lines[1]<>'' then Form1.ClientDataSet1['DopInfo2']:=Memo1.Lines[1];
  If Memo1.Lines[2]<>'' then Form1.ClientDataSet1['DopInfo3']:=Memo1.Lines[2];
  If Memo1.Lines[3]<>'' then Form1.ClientDataSet1['DopInfo4']:=Memo1.Lines[3];
  If Memo1.Lines[4]<>'' then Form1.ClientDataSet1['DopInfo5']:=Memo1.Lines[4];
  If Memo1.Lines[5]<>'' then Form1.ClientDataSet1['DopInfo6']:=Memo1.Lines[5];
  If Memo1.Lines[6]<>'' then Form1.ClientDataSet1['DopInfo7']:=Memo1.Lines[6];
  If Memo1.Lines[7]<>'' then Form1.ClientDataSet1['DopInfo8']:=Memo1.Lines[7];
  If Memo1.Lines[8]<>'' then Form1.ClientDataSet1['DopInfo9']:=Memo1.Lines[8];
  If Memo1.Lines[9]<>'' then Form1.ClientDataSet1['DopInfo10']:=Memo1.Lines[9];
  If Memo1.Lines[10]<>'' then Form1.ClientDataSet1['DopInfo11']:=Memo1.Lines[10];
  If Memo1.Lines[11]<>'' then Form1.ClientDataSet1['DopInfo12']:=Memo1.Lines[11];
  If Memo1.Lines[12]<>'' then Form1.ClientDataSet1['DopInfo13']:=Memo1.Lines[12];
  If Memo1.Lines[13]<>'' then Form1.ClientDataSet1['DopInfo14']:=Memo1.Lines[13];
  If Memo1.Lines[14]<>'' then Form1.ClientDataSet1['DopInfo15']:=Memo1.Lines[14];
  If Memo1.Lines[15]<>'' then Form1.ClientDataSet1['DopInfo16']:=Memo1.Lines[15];
  If Memo1.Lines[16]<>'' then Form1.ClientDataSet1['DopInfo17']:=Memo1.Lines[16];
  If Memo1.Lines[17]<>'' then Form1.ClientDataSet1['DopInfo18']:=Memo1.Lines[17]; }
  Form1.ClientDataSet1.Post;  //Сохраняется редакиование
  Form1.ClientDataSet1.MergeChangeLog;
  Form1.ClientDataSet1.SaveToFile('Data\DB.cds');
end;
Businka
 
Сообщения: 36
Зарегистрирован: Пт 07 сен 2012, 19:47

# 

6 ноя 2012, 22:39 

Гм.. DataSet не Active?
В конце операций вижу " Form1.ClientDataSet1.SaveToFile('Data\DB.cds');", где-то есть LoadFromFile('Data\DB.cds') ?

Как видишь в DBGrid, что "Идет заполнение строчки в БД"?

Как Я понимаю - обучаться программированию на форматах типа DBASE (Dbf) вообще не вариант? "Я комсомолец и мне нужно преодоление трудностей, так что только в гамаке?"
Аватара пользователя
Ant
 
Изображение
Сообщения: 1108
Зарегистрирован: Пн 27 авг 2007, 20:09

# 

7 ноя 2012, 17:46 

ДатаСет = труе. ЛоадФромФайл нету, но даже с ним тоже самое.

Ситуация такая, когда я выполняю код по отдельности т.е. сначала апенед, потом добавляю в талицу по очереди все значения, ПОЯВЛЯЕТСЯ строка в DBGrid, а потом выполняю код ПОСТ (т.е. сохраняю изменения) и ТУУУТ вдруг строка пропадает из Грида.

чтож может быть? :oops:
Businka
 
Сообщения: 36
Зарегистрирован: Пт 07 сен 2012, 19:47

НАПИСАТЬ ОТВЕТ

   Новые сообщения Новые сообщения    Нет новых сообщений Нет новых сообщений    Форум закрыт Форум закрыт   
cron