Delphi ортасының жұмысына жалпы сипаттама

Автор работы: Пользователь скрыл имя, 27 Декабря 2014 в 07:52, курсовая работа

Краткое описание

Курстык жұмыс кіріспеден, екі бөлімнен, қорытындыдан және пайдаланған әдебиеттер тізімінен тұрады. Delphi – де программа дайындау, програма мәзірін құру, анимация, мультимедиа процестерін ұйымдастыру, OLE технологиясын пайдаланып, басқа офистік қосымшаларды шақыру, олармен жұмыс істеу және күрделі қосымшалар, анықтамалық және тестілеу жүйелерін, электронды оқулықтар, мәліметтер қорын және т.б. іс-әрекеттерді орындауға болады.Көптеген операторлардың жазылуы Турбо Паскальдағы сияқты. Бірақ, мұнда программалауды үйрену үшін обьект, оқиға, қасиет, әдіс, класс ұғымдарымен еркін танысып, компоненттерді пайдалану және түрлі командалардың жазылу түрлерін білу қажет.

Вложенные файлы: 1 файл

Мәлімет базасы делфи.docx

— 295.44 Кб (Скачать файл)

 

     Қарапайым  жағдайда әр калонка үшін FieldName мүмкіндігінің белгісін орнату жеткілікті, ол жаз өрістің атын анықтайды, сондай-ақ Title мүмкіндік белгісі калонкада көрінетін болады. Калонка тақырыбын анықтайтын Caption

17 кестеде DBGridl компонентінің columns мүмкіндігінің белгілері  келтірілген.

 

17 кесте. DBGrid1 компоненті.

 

Компонент

FieldName

Title . Caption

DBGrid1. Columns [0]

DBGrid1. Columns [1]

Fam

Name

Фамилия

Имя

DBGrid1. Columns [2]

DBGrid1 . Columns [ 3 ]

Class

Adr

Класс

Адрес, телефон


 

    Соңғысы, DBNavigator компонент формасына қосу керек, оны мәліметтер кесте- қатарының жұмысына қосу  қажет ( DataSource мүмкіндігінен Table1 белгісін бер керек). Қосымша формасының түрі 16 суретте көрсетілген.

 

16 сурет. DBGrid1 компонентін құрғаннан кейінгі  форма.

 

      Осыдан кейін бағдарламаны көшіріп алып және жіберуге болады. Бағдарламаны жібергеннен кейін терезеде ақпарат пайда болуы үшін немесе егер мәліметтер базасы бос болса, жаңа ақпаратты енгізуге болады, Active мүмкіндігі мәліметтердің кесте қатары True белгісіне ие болуы керек.

     Мәліметтер базасымен жұмыс, кесте түрінде көрсетілгендей көбінесе      Microsoft Excel электрондық кестесімен жұмысқа ұқсайды, сондай-ақ мәтін беттерімен батырмамен парақтау (<Page Up> және  <Page Down>), жолдан жолға орналасу арқылы мәліметтер базасының жазуын қарау мүмкін. <Ins> батырмасын басу арқылы жазуды қосу мүмкін, ал <Del> - ді басып жазуды өшіру, жазудың өрісіне өзгеріс енгізу үшін, курсорды оңға, солға жылжыту арқылы, қажет өрісті таңдап және <F2> батырмасын басу керек.

 

                 

 

2.3.1. Мәліметтер базасынан ақпарат таңдау.

 

      Қолданушының мәліметтер базасымен жұмыс кезінде, ереже бойынша оның барлық мазмұны емес, ал кейбір нақты ақпарат қызықтырады. Керек мәліметтерді жазуларды режимін көру арқылы табуға болады. Соған қарамастан мұндай іздеу қабілеті ыңғайсыз және нәтижесі аз. Мәліметтер базасымен басқару жүйесінің көпшілігі сауалды орындау жолымен керек ақпаратты таңдауды өткізуге мүмкіндік береді. Қолданушы анықталған ережелерге сәйкес сауалды құрастырады, оны қызықтыратын ақпарат қай критерилерді қанағаттандыру керектігін көрсете отырып, ал жүйе сауалды қанағаттандыратын жазуды шығарады. Жазуларды мәліметтер базасынан таңдау үшін, кейбір критерилерді растайтын, Query компоненті алдын-ала тағайындалған (17 сурет).

 

17 сурет. Query компонентінің белгісі.

 

    Query  компоненті  Table  компонентіне ұқсайды, бірақ соңғысына қарағанда ол мәліметтер базасының  барлығын көрсетпейді, тек оның бөлігі- жазуды, сауал критериін қанағаттандырушы.

 

 

18 кесте. Query компонентінің мүмкіндігі.

 

Жетістік

Анықтама

Name

 

SQL  

 

Active

Компонент аты.Datasource компонентімен сауалдың орындалу нәтижесінің байланысы үшін жазуды қарауды қамтамасыз ететін, мысалы, DBGrid.

 

SQL тілінде жазылған мәліметтер базасына сауал (кестеге).

True  белгісінің мүмкіндігін  беру кезінде сауалды орындау  активтелінеді.


 

     Бағдарламаны өңдеу кезінде тапсырма беру үшін SQL мүмкіндігі SQL тілінде көрсетілген мәліметтерді  таңдауға сауалды сақтау керек.

Мәліметтер кестесінен таңдауға сауалды жалпы түрде жіберу былайынан көрініс табады.

SELECT - өрістер  тізімі,  FROM кесте  WHERE (Критериилер) ORDER BY өрістер тізімі, мұндағы:

SELECT —  жазуды таңдау басшылығы кесте  және мазмұнды өрістен шығару, олардың аттары тізімде көрсетілген;

FROM —  Кестенің атын анықтайтын параметр  жиынтығы, одан талдау жасау керек;

WHERE —  таңдау критериін тапсыратын параметр. Қарапайым жағдайда критерий – бұл сақталған өрісті тексерудің нұсқауы;

ORDER BY –  жағдайды сұрайтын параметр соған  сәйкес сауал критериқанағаттандыратын  жазулар таратылатын болады. 

Мысалы, сауал

SELECT FAM, Name FROM ': Мектеп: school.db’ WHERE

(Class = '10a') ORDER BY Name, FAM

"Мектеп" мәліметтер базасынан таңдауды  қамтамасыз етеді (School.db кестесінен) class өрісінде орналасқан 10а мәтіні, демек 10-а сынып оқушыларының  алфавит бойынша тізімін таратуды  құрады.

Басқа мысал. Сауал.

SELECT Fam, Name FROM ":Мектеп:school.db" WHERE

(Fam > 'K') and (Fam < 'Л') ORDER BY Name, Fam

Оқушылар туралы ақпарат таңдауды қамтамасыз етеді, олардың фамилиясы К әріпінен басталады. Сауал құралған және  SQL мүмкіндігіне жазылған болуы мүмкін, форманы өңдеу кезінде немесе бағдарламаның жұмысы кезінде. SQL мүмкіндігіне сауал жазу үшін форманы өңдеу үшін тізім редакторы қолданылады. (18 сурет) Object Inspector терезесінің

SQL мүмкіндігінің  жолағында үш нүктелі батырмаға  жанасу нәтижесінде ашылатын  терезе.

 

18 сурет. "Мектеп" мәліметтер базасына сауалнама мысалы.

 

SQL мүмкіндігі  жолдар тізімін ұсынады. Сондықтан  бағдарлама жұмысы кезінде сауалды  құру үшін Add әдісін қолдану керек, жолдарды (SQL- нұсқаулары) SQL тізіміне  қосу керек. Төменде код фрагменті  келтірілген, ол нақты адам туралы  сауалды іздеуге құрайды (таңдау  критериі — Fam өрісі сақтайтын  fam ауыспалы белгісімен сай келуі  керек. ).

With forml.Queryl do begin

Close; // жабық файл — орындалу нәтижесі

// алдыңғы  сауалдың 

SQL.Clear; // алдыңғы сауалдың мәтінін жою 

// SQL мүмкіндігіне  жаңа сауал жазамыз

SQL.Add('SELECT Fam, Name, Class1);

SQL.Add ('FROM "Мектеп: schooled"');

SQL.Add ('WHERE');

SQL.Add ('(FAM = '" + FAM + '")');

SQL.Add ('ORDER BY Name, Fam');

Open; // сауалды орындауды активтендіреміз. 

End;

Келесі бағдарлама, ал сұхбаттық терезе 19 суретте, сауалдың өзгеру мүмкіндігін демонстрациялайды, анығырақ сауал критериі  бағдарлама жұмысы кезінде. Бағдарлама оқушылар тізімінің түгел шығуын қамтамасыз етеді, оның бөлігіде. Мысалы сауалды орындаудың арқасында тек нақты оқушы туралы ақпарат шығады. Мәліметтер базасын қарау үшін және сауалдың орындалу нәтижесінде   DBGrid1 компоненті қолданылады, ал , DataSourcel компоненті арқылы  Table1 компонентімен қарым- қатынас жасайды (мәліметтер базасының барлығын көру кезінде) немесе  Query компонентімен (сауал орындалуының нәтижесін көру кезінде).

 

 

19 сурет.  «Мектеп» мәліметтер базасының формасы.

 

"Мектеп " Мәліметтер базасы

unit school2_;

Interface

Uses 
Windows, Messages, SysUtils, Classes,

Graphics, Controls, Forms,

Dialogs, Grids, DBGrids, Db,

DBTables, ExtCtrls, DBCtrls, StdCtrls;

type 
TForm1=class(TForm) 
Table1: TTable; // Кесте (барлық мәліметтер базасы) 
Query1: TQuery; // Сұраныс (МБ қанағаттандырушы критериін таңдап жазу) 
DataSource1: TDataSource; // мәліметтердің түпнегізі – кесте немесе сұраныс  
DBGrid1: TDBGrid; // МБ кестені және қорытындысын көрсету  DBNavigator1: TDBNavigator; 
DBText1: TDBText; 
Button1: TButton; // сұраныс батырмасы 
Button2: TButton; // Жазудың барлық батырмасы  
procedure Button1Click(Sender: TObject); 
procedure Button2Click(Sender: TObject); 
procedure FormActivate(Sender: TObject); 
private 
{ Private declarations } 
public 
{ Public declarations } 
end;

Var 
Form1: TForm1;

Implementation

{$R *.DFM}

// Сұраныс белгішесінің батырмасы 
procedure TForm1.Button1Click(Sender: TObject); 
var 
fam: string[30]; 
begin 
fam:=InputBox('МБ ақпараттарын таңдау ', 
'фамилияны көрсетіп және OK басыңыз.', ''); 
if fam <> '' // қолданушы фамилиясы  
then 
begin 
with form1.Query1 do begin 
Close; // Алдындағы сұраныстың қорытындысы орындалғанда файлды жабу  
SQL.Clear; // Алдыңғы сұраныстың мәтінін өшіру

// SQL  қасиетіндегі жаңа сұранысты  жазамыз 

SQL.Add('SELECT Fam, Name, Class'); 
SQL.Add('FROM ":Мектеп:school.db"'); 
SQL.Add('WHERE'); 
SQL.Add('(Fam = "'+ fam + '")'); 
SQL.Add('ORDER BY Name, Fam'); 
Open; // Сұраныс орындалуын активтендіреміз 
end;

{ *** Сұраныс критериінің өзгертілген  нұсқасы 

begin 
Query1.Close; 
Query1.SQL[3]:='(Fam="'+ fam + '")'; 
Query1.Open; 
DataSource1.DataSet:=Query1; 
end; 

if Query1.RecordCount <> 0 then 
DataSource1.DataSet:=Query1 // Сұраныстың  орындалуы қорытындысын көрсету

else begin 
ShowMessage('МБ қанағаттандырушы сұраныс  критериінің мәтіні жоқ.'); 
DataSource1.DataSet:=Table1; 
end; 
end; 
end;

// Жазудың барлық белгішесі  
procedure TForm1.Button2Click(Sender: TObject); 
begin 
DataSource1.DataSet:=Table1; // мәліметтер түпнегізі  - кесте  
end;

// форма екпіндісі  
procedure TForm1.FormActivate (Sender: TObject); 
begin 
DataSource1.DataSet := Table1; 
Table1.Active := True; 
end;   

End.

 

      TForm1.Button1Click процедурасы сауалнама басқышына тию арқылы жіберіледі. Ол қолданушыдан жолды және жазуды қабылдайды.

     SQL мүмкіндігін қабылдап сауал мәтінін құрады.Содан кейін бұл процедура

Open әдісін  шақыру арқылы сауалдың орындалуын  активтендіреді.

SQL- сауал  мүмкіндігін  өзгеру алдында close әдісінің көмегімен жабылуы мүмкін  екендігіне көңіл аудару керек (мұнда сауалдың орындалу нәтижесі- бұл сауалдың орындалу нәтижесінде  құрылатын мәліметтер файлы екенін  еске түсіру керек.

     Барлық жазулар басшылығын тию арқылы жіберілетін TForm1.Button2Click, процедурасы DataSourcel компоненті үшін мәліметтер қатары сапасында  Table1 компонентін орнатады, сол арқылы мәліметтер базасының барлығын көру режиміне көшуді қамтамасыз ете отырып. Егер сауал SQL мүмкіндігінде қосымша форманы өңдеу кезінде жазылған болса, онда бағдарламаның жұмысы кезінде сауал критериі сауал мәтініне сәйкес жолдармен жай ауыстыруға болады.

Мысалы, сауал үшін.

SELECT DISTINCT FAM, Name, Class FROM ": Мектеп: school.db" WHERE

(Class= '10а') ORDER BY Name, FAM

 Критериін ауыстыру нұсқауы мынадай болуы мүмкін:

forml.Query1.SQL [3] :='( FAM="' + fam+ '")'

SQL мүмкіндігі Strings типтер құрылым болып табылады, оның жолдары нөлден нөмірленетініне көңіл аудару қажет.  

 

                

 

2.3.2. Динамикалық құрылатын псевдонимдер

 

       Псевдонимді мәліметтер базасына қол жеткізу үшін қолдану мәліметтерді жүйеде орналастырудың бағдарлама тәуелсіздік қамтамасыз ететін, мәліметтермен жұмыс бағдарламасын және мәліметтер базасын компьютердің әртүрлі дискілерінде орналастыруды қолдануға мүмкіндік береді, соның ішінде жүйелікте. Қарапайым  мәліметтер базасы үшін мәліметтер базасын жеке катологта орналастыру типтік шешім болып табылады. Осылайша мәліметтер базасымен жұмыс бағдарламасы әрқашан мәліметтер қай жерде орналасқанын біледі.

      Мұндай BDE Administrator  көмегімен псевдонимді құрудан бас тартуға болады және мәліметтер базасымен жұмыс бағдарламасын құру тапсырмасын сеніп тапсыруға болады. Оның үстіне псевдоним автоматты түрде бағдарламаны жібергенде құрылады және оның жұмысын аяқтаған кезде жойылатын болады. Таңқаларлығы мәліметтер базасын әкімшіліктендіруді жеңілдендіреді.

     Төменде "Мектеп" мәліметтер базасымен жұмыс бағдарламасы нұсқа ретінде келтірілген, мәліметтер базасына қол жеткізу үшін динамикалық құрылған псевдоним қолданады.

 

"Мектеп " мәліметтер базасы (МБ псевдонимі динамикасы құрылады).

unit school3_;

interface

uses 
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, 
Dialogs, Grids, DBGrids, Db, DBTables, ExtCtrls, DBCtrls, StdCtrls;

Type 
TForm1 = class (TForm)  
Table1: TTable; // Кесте (барлық мәліметтер базасы) 
Query1: TQuery; // Сұраныс (МБ қанағаттандырушы критериін таңдап жазу) 
DataSource1: TDataSource; // мәліметтер түпнегізі - кесте немесе сұраныс 
DBGrid1: TDBGrid; // МБ кестені және қорытындысын көрсету 
DBNavigator1: TDBNavigator; 
DBText1: TDBText; 
Button1: TButton; // Сұраныс батырмасы

Button2: TButton; // Жазу барлық батырмасы

procedure Button1Click(Sender: TObject); 
procedure Button2Click(Sender: TObject); 
procedure FormActivate(Sender: TObject); 
private 
{ Private declarations } 
public 
{ Public declarations } 
end;

Var 
Form1: TForm1;

Implementation

{$R *.DFM}

// Сұраныс батырмасының белгішесі  
procedure TForm1.Button1Click(Sender: TObject); 
var 
fam: string[30]; 
begin 
fam:=InputBox('МБ ақпараттарын таңдау', 
'фамилияны көрсетіп және OK басыңыз.', ''); 
if fam <> '' // фамилия қолданушы  
then 
begin 
with form1.Query1 do begin 
Close; // Алдындағы сұраныстың қорытындысы орындалғанда файлды жабу  
SQL.Clear; // Алдыңғы сұраныстың мәтінін өшіру

// SQL  қасиетіндегі жаңа сұранысты  жазамыз 

SQL.Add('SELECT Fam, Name, Class'); 
SQL.Add('FROM ":Мектеп:school.db"'); 
SQL.Add('WHERE'); 
SQL.Add('(Fam = "'+ fam + '")'); 
SQL.Add('ORDER BY Name, Fam'); 
Open; // Сұраныс орындалуын активтендіреміз 
end;

if Query1.RecordCount <> 0 then 
DataSource1.DataSet:=Query1 // Сұраныстың  орындалуы қорытындысын көрсету

else begin 
ShowMessage('МБ қанағаттандырушы сұраныс  критериінің мәтіні жоқ.'); 
DataSource1.DataSet:=Table1; 
end; 
end; 
end;

// Жазудың барлық белгішесі end;

End;  
end;  
end;

// Жазу батырмасының барлық белгішесі

Procedure TForm1.Button2Click (Sender: TObject); 
begin 
DataSource1.DataSet:=Table1; // мәліметтер түпнегізі – кесте  
end;

// форма активизациясы  
procedure TForm1.FormActivate(Sender: TObject); 
begin 
with Session do 
begin 
Confirmed := cmSession; 
try 
{ Егер мәліметтер файлы сол каталогта орналасқан болса, бағдарлама файлы орындалатын, онда бағдарламада мәліметтер файлына жол басшылық жолақтардан алынған болуы мүмкін ExtractFilePath(ParamStr(0)) функциясының көмегімен.. 
Келтірілген мысалда мәліметтер файлы бағдарлама каталогының DATA каталогында орналасқан.}

Информация о работе Delphi ортасының жұмысына жалпы сипаттама