Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Список используемых источников

 

1. Мартин Груббер, "Понимание SQL", Москва, 2003 г

2. Т. Карпова - Базы данных: модели, разработка, реализация. Питер, 2001

3. Курс лекций по разработке баз данных, Терлецкая А.М., 2007 г

Приложения

Приложение А Концептуальная модель данных

 

Приложение Б. Листинг программного кода

 

Unit1

procedure TForm1. TabControl1Change (Sender: TObject);

begin

case Tabcontrol1. TabIndex of

0: // управление вкладками

begin

DBGrid1. Visible: =true;

DBNavigator1. Visible: =true;

DBGrid2. Visible: =false;

DBNavigator2. Visible: =false;

DBGrid3. Visible: =false;

DBNavigator3. Visible: =false;

DBGrid4. Visible: =false;

ComboBox1. Visible: =false;

end;

1:

begin

DBGrid1. Visible: =false;

DBNavigator1. Visible: =false;

DBGrid2. Visible: =true;

DBNavigator2. Visible: =true;

DBGrid3. Visible: =false;

DBNavigator3. Visible: =false;

DBGrid4. Visible: =false;

ComboBox1. Visible: =false;

end;

2:

begin

DBGrid1. Visible: =false;

DBNavigator1. Visible: =false;

DBGrid2. Visible: =false;

DBNavigator2. Visible: =false;

DBGrid3. Visible: =true;

DBNavigator3. Visible: =true;

DBGrid4. Visible: =false;

ComboBox1. Visible: =false;

end;

3:

begin

DBGrid1. Visible: =false;

DBNavigator1. Visible: =false;

DBGrid2. Visible: =false;

DBNavigator2. Visible: =false;

DBGrid3. Visible: =false;

DBNavigator3. Visible: =false;

DBGrid4. Visible: =true;

ComboBox1. Visible: =true;

end;

end;

end;

procedure TForm1. Exit1Click (Sender: TObject);

begin

Close; закрытие программы

end;

procedure TForm1.comboBox1Change (Sender: TObject);

var

town: string;

prod: string;

price: string;

aktiv: string;

begin

case ComboBox1. ItemIndex of

0: // первый запрос

begin

ADOQuery1. Active: = false;

aktiv: =InputBox ('Введите','Вид деятельности предприятия',aktiv);

aktiv: =Edit1. Text+aktiv+Edit1. Text;

if aktiv<>'' then

ADOQuery1. SQL. Text: = 'select * from Organizations where Activity='+aktiv;

ADOQuery1. Active: = true;

 // ------------------report----------------------------------------------

N2. Enabled: =true;

Form3. QRLabel2. Caption: ='Организации';

Form3. QRLabel4. Caption: ='Адрес';

Form3. QRLabel5. Caption: ='Деятельность';

Form3. QRLabel6. Caption: ='Телефон';

Form3. QRLabel7. Caption: ='E-mail';

end;

1: // второй запрос

begin

ADOQuery1. Active: = false;

price: =InputBox ('Введите','Цена за единицу продукции',price);

if (price<>'') or (StrToInt (price) >=1000) then

ADOQuery1. SQL. Text: = 'select * from Productions where Price_for_one>='+price+' order by Production_name';

ADOQuery1. Active: = true;

N2. Enabled: =false;

end;

2: // третий запрос

begin

ADOQuery1. Active: = false;

prod: =InputBox ('Введите','Наименование продукции',prod);

prod: =Edit1. Text+prod+Edit1. Text;

if prod<>'' then

aktiv: =InputBox ('Введите','Количество проданной продукции',aktiv);

if (aktiv<>'') or (StrToInt (aktiv) >0) then

ADOQuery1. SQL. Text: = 'select * from Sale where Production_name='+prod+' and number>='+aktiv;

ADOQuery1. Active: = true;

N2. Enabled: =false;

end;

3: // четвертый запрос

begin

ADOQuery1. Active: = false;

prod: =InputBox ('Введите','Наименование продукции',prod);

prod: =Edit1. Text+prod+Edit1. Text;

if prod<>'' then

ADOQuery1. SQL. Text: = 'select Production_name, Sum (number) as Number_saled from Sale where Production_name='+prod+' group by Production_name';

ADOQuery1. Active: = true;

N2. Enabled: =false;

end;

4: // пятый запрос

begin

ADOQuery1. Active: = false;

town: =InputBox ('Введите','Название города',town);

town: =Edit1. Text+town+Edit1. Text;

if town<>'' then

aktiv: =InputBox ('Введите','Вид деятельности предприятия',aktiv);

aktiv: =Edit1. Text+aktiv+Edit1. Text;

if aktiv<>'' then

ADOQuery1. SQL. Text: = 'select * from Organizations where (Address='+town+') and Activity='+aktiv;

ADOQuery1. Active: = true;

 // -------------------------------отчет--------------------------

N2. Enabled: =true;

Form3. QRLabel2. Caption: ='Организации';

Form3. QRLabel4. Caption: ='Адрес';

Form3. QRLabel5. Caption: ='Деятельность';

Form3. QRLabel6. Caption: ='Телефон';

Form3. QRLabel7. Caption: ='E-mail';

end;

5: // шестой запрос

begin

ADOQuery1. Active: = false;

aktiv: =InputBox ('Введите','Количество прод. продукции за одну заявку >=',aktiv);

if aktiv<>'' then

ADOQuery1. SQL. Text: = 'select * from Sale where number>='+aktiv;

ADOQuery1. Active: = true;

N2. Enabled: =false;

end;

6: // седьмой запрос

begin

ADOQuery1. Active: = false;

ADOQuery1. SQL. Text: = 'select Production_name, MAX (number) as MAX from Sale group by Production_name';

ADOQuery1. Active: = true;

 // ---------------------------отчет------------------------------------

N2. Enabled: =true;

Form3. QRLabel2. Caption: ='';

Form3. QRLabel4. Caption: ='Продукция';

Form3. QRLabel5. Caption: ='МАХ';

Form3. QRLabel6. Caption: ='';

Form3. QRLabel7. Caption: ='';

end;

7: // восьмой запрос

begin

ADOQuery1. Active: = false;

ADOQuery1. SQL. Text: = 'select distinct Organization_name,Production_name, MAX (number) as MAX from Sale group by Production_name,Organization_name';

ADOQuery1. Active: = true;

 // ----------------------------------отчет--------------------------

N2. Enabled: =true;

Form3. QRLabel2. Caption: ='Организации';

Form3. QRLabel4. Caption: ='Продукция';

Form3. QRLabel5. Caption: ='МАХ';

Form3. QRLabel6. Caption: ='';

Form3. QRLabel7. Caption: ='';

end;

8:

begin

Form2. Visible: =true; // создать запрос

end;

end;

end;

procedure TForm1. N6Click (Sender: TObject);

begin

Form2. Visible: =true; // вызов окна создания запросов

end;

procedure TForm1. DataBase1Click (Sender: TObject);

begin

winhelp (Form1. Handle,'Справка. hlp',HELP_Context,1);

end;

procedure TForm1. N2Click (Sender: TObject);

begin

Form3. QuickRep1. Preview; // вызов отчета

end;

end.

Unit 2.

 // -----------------------------------создание запросов-------------------------------

procedure TForm2. Button1Click (Sender: TObject);

var

name, sel, from, where: string;

having, group, order: string;

num: integer;

begin

if (Edit1. Text='') or (Edit2. Text='') or (Edit3. Text='') then

ShowMessage ('Заполните поля, отмеченные звездочкой! ')

else

begin

name: =Edit1. Text;

sel: =Edit2. Text;

from: =Edit3. Text;

where: =Edit4. Text;

group: =Edit5. Text;

order: =Edit6. Text;

having: =Edit7. Text;

Form1. ADOQuery1. Active: = false;

if (where='') and (group='') and (order='') then

Form1. ADOQuery1. SQL. Text: = 'select '+sel+' from '+from

else

if (group='') and (order='') then

begin

Form1. ADOQuery1. SQL. Text: = 'select '+sel+' from '+from+' where '+where;

end

else

if (having='') and (order='') then

begin

Form1. ADOQuery1. SQL. Text: = 'select '+sel+' from '+from+' where '+where+

' group by '+group;

end

else

if order='' then

begin

Form1. ADOQuery1. SQL. Text: = 'select '+sel+' from '+from+' where '+where+

' group by '+group+' having '+having;

end

else

begin

Form1. ADOQuery1. SQL. Text: = 'select '+sel+' from '+from+' where '+where+

' group by '+group+' having '+having+' order by '+order;

end;

Form1. ADOQuery1. Active: = true;

Form2. Visible: =false;

end;

end;

 // ---------------------------------------------------------------------

procedure TForm2. Edit5Change (Sender: TObject);

begin

Memo1. Lines [8]: =' Group by '+Edit5. Text;

if Edit5. Text<>'' then

begin

Label7. Enabled: =true;

Edit7. Enabled: =true;

end

else

begin

Label7. Enabled: =false;

Edit7. Enabled: =false;

end;

end;

procedure TForm2. Edit2Change (Sender: TObject); // управление Мемо

begin

Memo1. Lines [2]: =' Select '+Edit2. Text;

end;

procedure TForm2. Edit3Change (Sender: TObject);

begin

Memo1. Lines [4]: =' From '+Edit3. Text;

end;

procedure TForm2. Edit4Change (Sender: TObject);

begin

Memo1. Lines [6]: =' Where '+Edit4. Text;

end;

procedure TForm2. Edit7Change (Sender: TObject);

begin

Memo1. Lines [10]: =' Having '+Edit7. Text;

end;

procedure TForm2. Edit6Change (Sender: TObject);

begin

Memo1. Lines [12]: =' Order by '+Edit6. Text;

end;

procedure TForm2. Button2Click (Sender: TObject);

begin

Form2. Visible: =false;

end;

procedure TForm2. Edit1Change (Sender: TObject);

begin

Memo1. Lines [0]: ='Запрос - '+Edit1. Text;

end;

end.

 

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...