§ 19. Кампаненты для работы з базамі даных

Практыкаванні

Для праекта з прыкладу 19.13 дадайце наступныя магчымасці:

  1. Дадаць новую ўкладку для кампанента PageControl, якую варта назваць Форма.
  2. Размясціць на ўкладцы «Форма» наступныя кампаненты:

    Кампанент поле DBEdit размешчаны на ўкладцы DataControls. Для такіх кампанентаў можна ўстанавіць сувязі з палямі базы даных, змяніўшы іх уласцівасці ў інспектары аб'ектаў:

    3*. Дадаць магчымасць змены шрыфту і колеру для кампанентаў, размешчаных на форме.

2. Рэалізуйце магчымасць дадання запісаў у табліцу з выкарыстаннем дадатковай формы (для праекта прыкладу 19.13).

    1. Размясціце на ўкладцы «Таблица» кнопку «Добавить запись». Зрабіце яе нябачнай.
    2. Стварыце новую форму ў праекце: File-> New-> VCL Form — C++Builder.
    3. Захавайце форму ў папку з праектам.
    4. Дадайце радок #include "Unit2.h" у файл Unit1.h. (магчымасць доступу да другой формы з першай).
    5. Дадайце радок #include "Unit1.h" у файл Unit2.h. (магчымасць звяртацца да кампанентаў першай формы з другой).
    6. Размясціце на Form2:
      • 5 кампанентаў LabeledEdit (назву размясціць злева: уласцівасць LabelPosition=lpLeft),
      кампанент Button («ОК»).
      Кнопка «Добавить запись» становіцца бачнай пасля адлюстравання табліцы.
    7. Для кнопкі «Добавить запись» напісаць у апрацоўшчыку каманду:
      Form2->Show();
      У апрацоўшчыку кнопкі «ОК» на Form2 прапісаць наступныя каманды:
      Form1->ADOTable1->Active = true;
      Form1->ADOTable1->Fields->Fields[0]->ReadOnly = false;
      Form1->ADOTable1->Fields->Fields[1]->ReadOnly = false;
      Form1->ADOTable1->Fields->Fields[2]->ReadOnly = false;

      Form1->ADOTable1->Insert();
      Form1->ADOTable1->Fields->Fields[0]->Value = Form1->ADOTable1->RecordCount + 1;
      Form1->ADOTable1->Fields->Fields[1]->Value = Form2->LabeledEdit1->Text;

      Form1->ADOTable1->UpdateBatch();//прымяненне абнаўленняў
      Form1->ADOTable1->Refresh();
    8. *Дадайце каманды праверкі карэктнасці дадаваных даных:

1. Прозвішча павінна запісвацца маленькімі літарамі, а пачынацца з вялікай літары.
2. Пасля прозвішча павінен быць адзін прабел.
3. Ініцыялы запісваюцца без прабелу, вялікімі літарамі з кропкай пасля іх.
4. Дата нараджэння мае фармат: 2 лічбы, кропка, 2 лічбы, кропка, чатыры лічбы. Праверыць карэктнасць даты (месяц ад 1 да 12, дзень ад 1 да (28, 29, 30,31), год ад 1900 да 2000).
5. Пол змяшчае адну літару: «м» або «ж».
6. Год прысваення звання — лік з прамежку [1900..20..]. *Правую мяжу прамежку года можна атрымліваць з бягучай даты.
7. Пры незахаванні фармату выдаваць адпаведнае паведамленне.

3. Для праекта з прыкладу 19.16 дадайце наступныя магчымасці:

    1. Дадайце кнопкі «Сохранить Запрос» і «Загрузить Запрос» (выкарыстоўваючы дыялогі работы з файламі).
    2. Стварыце і захавайце 3 запыты:
      1. З палямі Название і Денежная единица, якія адлюстроўваюць краіны, у якіх грашовая адзінка еўра.
      2. З палямі Название і Язык, якія адлюстроўваюць краіны, у якіх назва мовы пачынаецца з літар 'а 'ці 'н'.
      3. Рэалізуйце свой запыт (складальны, адно з палёў павінна быць лічбавым).
    3. Дадайце кнопку «Запрос 2» і тэкставае поле. Рэалізуйце запыт для пошуку краін, першыя літары назваў якіх уведзены ў тэкставае поле.
    4. Дадайце кнопку «Запрос 3», выпадальны спіс і тэкставае поле. У выпадальным спісе змясціце знакі «>, <, =». Рэалізуйце запыт для пошуку краін, плошча якіх — значэнні ( > ,<,=), уведзенага ў тэкставае поле.
    5. Дадайце кнопку «Запрос 4», і два спіса. У першы спіс змясціце назвы палёў, у другі — словы «возрастание», «убывание».  Рэалізуйце запыт, які сартуе табліцу згодна з абраным крытэрыем.