49982 (572461), страница 2
Текст из файла (страница 2)
select o.buildmanagement, o.nplot_id, n.head
from tblorder as o, tblnplot as n
where o.nplot_id=n.nplot_id
2. Одержати список фахівців інженерно-технічного складу позначеної ділянки або будівельного правління із зазначенням їх посад
select distinct(o.buildmanagement), o.nplot_id, t.engineers, t.technology, t.technics
from tblorder as o, tblnplot as n, tbltech as t
where o.nplot_id=3
3. Одержати перелік об'єктів, що зводяться зазначеним будівельним правлінням або ділянкою, і графіки їхнього зведення
select distinct(o.object), o.buildmanagement, o.nplot_id, g.jobtype, g.termperformance
from tblorder as o, tblgrafics as g
where o.order_id=g.order_id
4. Одержати склад бригад, що працювали (працюють) на будівництві зазначеного об'єкта
select o.object, w.bricklayer, w.concrete, w.handler, w.welders, w.electricity, w.driver, w.locksmiths, w.workers_id
from tblorder as o, tblworkers as w
where o.nplot_id=w.nplot_id
5. Одержати перелік будівельної техніки, наданої зазначеному будівельному правлінню
select o.buildmanagement, m.bulldozers, m.cranes, m.excavator, 3
from tblorder as o, tblmachines as m
where o.nplot_id=3
order by 3
6. Одержати перелік будівельної техніки, виділеної на зазначений об’єкт або тієї, що працювала там упродовж зазначеного періоду часу
select o.object, o.buildmanagement, m.bulldozers, m.cranes, m.excavator, g.termperformance, m.nplot_id
from tblorder as o, tblmachines as m, tblgrafics as g
where o.nplot_id=m.nplot_id and o.order_id=g.order_id and g.TermPerformance<'01.01.2012'
7. Одержати графік і кошторис на будівництво зазначеного об'єкта
select o.object, g.jobtype, g.kyshty
from tblorder as o, tblgrafics as g
where o.order_id=g.order_id
8. Одержати звіт про спорудження зазначеного об’єкта
select o.object, r.jobtype, r.used
from tblorder as o, tblreport as r
where o.order_id=r.order_id and o.object='Дім'
9. Одержати перелік об’єктів, що зводяться у деякому будівельному правлінні або в цілому по організації, та на яких у позначений період часу виконувався зазначений вид будівельних робіт
select o.object, o.buildmanagement, g.jobtype, g.termperformance from tblorder as o, tblgrafics as g where o.order_id=g.order_id and g.termperformance= 01.01.2012
10. Одержати перелік видів будівельних робіт, по яких мало місце перевищення строків виконання на зазначеній ділянці, будівельному правлінні або в цілому по організації
select o.object, o.BuildManagement, r.jobtype, g.termperformance, r.completion
from tblorder as o, tblreport as r, tblgrafics as g
where o.order_id=g.order_id and o.order_id=r.order_id
and g.termperformance < r.completion and g.jobtype=r.jobtype
11. Одержати перелік будівельних матеріалів, по яких мало місце перевищення кошторису на зазначеній ділянці, будівельному правлінні або в цілому по організації
select o.object, o.BuildManagement, m.materials, g.kyshty, r.used
from tblorder as o, tblmaterials as m, tblgrafics as g, tblreport as r
where o.order_id=g.order_id and o.order_id=r.order_id and g.grafics_id=m.grafics_id and
g.kyshty 12. Одержати перелік видів будівельних робіт, виконаних зазначеною бригадою протягом позначеного періоду часу із вказівкою об'єктів, де ці роботи виконувалися select o.object, g.jobtype, g.termperformance, b.brigade_id from tblorder as o, tblgrafics as g, tblbrigade as b where o.nplot_id=b.nplot_id and o.order_id=g.grafics_id and b.brigade_id=3 13. Одержати перелік бригад, що виконували зазначений вид будівельних робіт протягом позначеного періоду часу із зазначенням об'єктів, де ці роботи виконувалися select o.object, g.jobtype, b.brigade_id, g.termperformance from tblorder as o, tblgrafics as g, tblbrigade as b where o.nplot_id=b.nplot_id and o.order_id=g.grafics_id and g.jobtype='ремонт' Лістинг програми unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, DBCtrls, StdCtrls, Menus, DB, Grids, DBGrids, ADODB; type TForm1 = class(TForm) ADOConnection1: TADOConnection; ADOConnection2: TADOConnection; ADOTable1: TADOTable; ADOQuery1: TADOQuery; DBGrid1: TDBGrid; DataSource1: TDataSource; DataSource2: TDataSource; MainMenu1: TMainMenu; ComboBox1: TComboBox; DBNavigator1: TDBNavigator; OpenDialog1: TOpenDialog; SaveDialog1: TSaveDialog; File1: TMenuItem; N1: TMenuItem; N2: TMenuItem; Button6: TButton; Button7: TButton; procedure ComboBox1Change(Sender: TObject); procedure N2Click(Sender: TObject); procedure N1Click(Sender: TObject); procedure FormShow(Sender: TObject); procedure Button6Click(Sender: TObject); procedure Button7Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation uses Unit2, Unit3, Unit4, Unit5; {$R *.dfm} procedure TForm1.FormShow(Sender: TObject); begin Form2.ShowModal; end; procedure TForm1.ComboBox1Change(Sender: TObject); begin if (Combobox1.Text='Номер ділянки') then begin form1.ADOTable1.Active:=false; form1.ADOTable1.TableName:='tblNPlot';form1.ADOTable1.Active:=true; end; if (Combobox1.Text='Характеристика заказу на мости та дороги') then begin form1.ADOTable1.Active:=false; form1.ADOTable1.TableName:='tblChaRoad';form1.ADOTable1.Active:=true; end; if (Combobox1.Text='Характеристика заказу на житловий будинок') then begin form1.ADOTable1.Active:=false; form1.ADOTable1.TableName:='tblChaBuild';form1.ADOTable1.Active:=true; end; if (Combobox1.Text='Таблиця що містить інформацію про закази') then begin form1.ADOTable1.Active:=false; form1.ADOTable1.TableName:='tblOrder';form1.ADOTable1.Active:=true; end; if (Combobox1.Text='Графік зведення обєкта ') then begin form1.ADOTable1.Active:=false; form1.ADOTable1.TableName:='tblGrafics';form1.ADOTable1.Active:=true; end; if (Combobox1.Text='Звіт виконання роботи') then begin form1.ADOTable1.Active:=false; form1.ADOTable1.TableName:='tblReport';form1.ADOTable1.Active:=true; end; if (Combobox1.Text='Бригади') then begin form1.ADOTable1.Active:=false; form1.ADOTable1.TableName:='tblBrigade ';form1.ADOTable1.Active:=true; end; if (Combobox1.Text='Інженерно-технічний персонал') then begin form1.ADOTable1.Active:=false; form1.ADOTable1.TableName:='tblTech ';form1.ADOTable1.Active:=true; end; if (Combobox1.Text='будівельна техніка') then begin form1.ADOTable1.Active:=false; form1.ADOTable1.TableName:='tblMachines ';form1.ADOTable1.Active:=true; end; if (Combobox1.Text='Робітники') then begin form1.ADOTable1.Active:=false; form1.ADOTable1.TableName:='tblWorkers ';form1.ADOTable1.Active:=true; end; end; procedure TForm1.N2Click(Sender: TObject); begin close(); end; procedure TForm1.N1Click(Sender: TObject); begin ShowMessage('Anisimov Andriy'); end; procedure TForm1.Button6Click(Sender: TObject); begin form5.ShowModal; if (Form5.modalresult <> 6) then begin ShowMessage('Пароль неверный'); end else begin form3.ShowModal; end; end; procedure TForm1.Button7Click(Sender: TObject); begin form4.ShowModal; end; end. unit Unit2; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls, jpeg; type TForm2 = class(TForm) Image1: TImage; Timer1: TTimer; procedure Image1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form2: TForm2; implementation {$R *.dfm} procedure TForm2.Image1Click(Sender: TObject); begin close; end; end. unit Unit3; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Menus, DB, ADODB, Grids, DBGrids; type TForm3 = class(TForm) Label1: TLabel; DBGrid2: TDBGrid; ADOConnection1: TADOConnection; ADOConnection2: TADOConnection; ADOTable1: TADOTable; ADOQuery1: TADOQuery; DataSource1: TDataSource; DataSource2: TDataSource; MainMenu1: TMainMenu; File1: TMenuItem; N1: TMenuItem; N2: TMenuItem; OpenDialog1: TOpenDialog; SaveDialog1: TSaveDialog; Label2: TLabel; Button1: TButton; Memo1: TMemo; Button2: TButton; Button3: TButton; Button4: TButton; Button5: TButton; procedure Button1Click(Sender: TObject); procedure Button5Click(Sender: TObject); procedure Button4Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button3Click(Sender: TObject); procedure N2Click(Sender: TObject); procedure FormCreate(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form3: TForm3; implementation {$R *.dfm} procedure TForm3.Button1Click(Sender: TObject); begin ADOQuery1.close; {Деактивируем запрос в качестве одной из мер предосторожности } ADOQuery1.SQL.Clear; {Стираем любой предыдущий запрос} If Memo1.Lines[0] <> '' {Проверяем на предмет пустого ввода} then ADOQuery1.SQL.Add(Memo1.Text) {Назначаем свойству SQL текст Memo} else begin messageDlg('Введіть sql запрос', mtError, [mbOK], 0); exit; end; try {перехватчик ошибок} ADOQuery1.Open; {Выполняем запрос и открываем набор данных} except {секция обработки ошибок} On e : EDatabaseError do {e - новый дескриптор ошибки} messageDlg(e.message,mtError,[mbOK],0); {показываем свойство message объекта e} end;{окончание обработки ошибки} Memo1.ReadOnly:=false; end; procedure TForm3.Button5Click(Sender: TObject); begin Memo1.Clear; end; procedure TForm3.Button4Click(Sender: TObject); begin if SaveDialog1.Execute then Memo1.Lines.SaveToFile(SaveDialog1.FileName); end; procedure TForm3.Button2Click(Sender: TObject); begin Memo1.Lines.SaveToFile(OpenDialog1.FileName) end; procedure TForm3.Button3Click(Sender: TObject); begin Memo1.ReadOnly:=true; openDialog1.Filter:='Текстові файли|*.txt'; if OpenDialog1.Execute and FileExists (OpenDialog1.FileName) then Memo1.Lines.LoadFromFile(OpenDialog1.FileName); end; procedure TForm3.N2Click(Sender: TObject); begin close(); end; procedure TForm3.FormCreate(Sender: TObject); begin ShowMessage('Anisimov Andriy'); end; end. unit Unit4; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Menus, DB, ADODB, Grids, DBGrids; type TForm4 = class(TForm) Label1: TLabel; DBGrid2: TDBGrid; ADOConnection1: TADOConnection; ADOConnection2: TADOConnection; ADOTable1: TADOTable; ADOQuery1: TADOQuery; DataSource1: TDataSource; DataSource2: TDataSource; MainMenu1: TMainMenu; File1: TMenuItem; N1: TMenuItem; N2: TMenuItem; OpenDialog1: TOpenDialog; SaveDialog1: TSaveDialog; Label2: TLabel; Button1: TButton; Memo1: TMemo; Button3: TButton; procedure Button3Click(Sender: TObject); procedure Button1Click(Sender: TObject); procedure N2Click(Sender: TObject); procedure FormCreate(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form4: TForm4; implementation {$R *.dfm} procedure TForm4.Button3Click(Sender: TObject); begin Memo1.ReadOnly:=true; openDialog1.Filter:='Текстові файли|*.txt'; if OpenDialog1.Execute and FileExists (OpenDialog1.FileName) then Memo1.Lines.LoadFromFile(OpenDialog1.FileName); end; procedure TForm4.Button1Click(Sender: TObject); begin ADOQuery1.close; {Деактивируем запрос в качестве одной из мер предосторожности } ADOQuery1.SQL.Clear; {Стираем любой предыдущий запрос} If Memo1.Lines[0] <> '' {Проверяем на предмет пустого ввода} then ADOQuery1.SQL.Add(Memo1.Text) {Назначаем свойству SQL текст Memo} else begin messageDlg('Введіть sql запрос', mtError, [mbOK], 0); exit; end; try {перехватчик ошибок} ADOQuery1.Open; {Выполняем запрос и открываем набор данных} except {секция обработки ошибок} On e : EDatabaseError do {e - новый дескриптор ошибки} messageDlg(e.message,mtError,[mbOK],0); {показываем свойство message объекта e} end;{окончание обработки ошибки} Memo1.ReadOnly:=false; end; procedure TForm4.N2Click(Sender: TObject); begin close(); end; procedure TForm4.FormCreate(Sender: TObject); begin ShowMessage('Anisimov Andriy'); end; end. unit Unit5; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm5 = class(TForm) Button1: TButton; Edit1: TEdit; procedure oK(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); private { Private declarations } public { Public declarations } end; var Form5: TForm5; implementation {$R *.dfm} procedure TForm5.oK(Sender: TObject); begin if (Edit1.Text = '0000') then ModalResult:=6; close; end; procedure TForm5.FormClose(Sender: TObject; var Action: TCloseAction); begin if (Edit1.Text = '0000') then ModalResult:=6; end; end. Висновок При виконанні курсової роботи я пригадав як створювати: базу даних, концептуальну та фізичну модель БД, SQL запити, запити на створення таблиць та зв’язків між ними. Освіжив свої навики в SQL quarry analyzer, SQL Enterprise manager та Power designer. А також написав програму на мові Delphi, яка допомогла б користувачу з легкістю користуватися створеною мною базою даних. 27














