-fesil-1: Info10-(1). qxd



Yüklə 0,62 Mb.
Pdf görüntüsü
səhifə14/21
tarix17.10.2017
ölçüsü0,62 Mb.
#5226
növüDərs
1   ...   10   11   12   13   14   15   16   17   ...   21

SORĞULAR. HESABATLAR

• Sorğu nədir və onun nəticəsi nə olur

• Sorğular necə formalaşdırılır

• Mürəkkəb sorğular necə yaradılır

• Hesablar necə yaradılır

Verilənlər bazasında verilənlər cədvəllərdə saxlanılır. Ancaq istifadəçilərin

bilavasitə bu cədvəllərlə işləməsi təhlükəsizlik və etibarlılıq baxımından məs-

ləhət görülmür. Verilənlərə müraciət,

adətən, birbaşa deyil, aralıq obyektlər

– sorğular, formalar və hesabatlar va -

sitəsilə həyata keçirilir. Baza cədvəl-

lərinin strukturu kimi, bu obyektlər də

verilənlər bazasının layihələn dirilməsi

mərhələsində yaradılır.   



Sorğular. Qeyd olunduğu kimi, veri -

lənlərə müraciət etmək üçün, adətən,



sorğulardan [query] istifadə olunur.

Sorğularla işləmək rahatdır, sürətlidir

və onlar təhlükəsizlik baxımından eti -

barlıdır.   

Bir cədvəl üçün bir neçə sorğu for-

malaşdırmaq olar. Hər bir sorğu cəd-

vəldə saxlanılan informasiyanın bir

hissəsini – yalnız ona lazım olan

hissəsini seçib götürə bilər. Sorğu  nəticəsində ilkin verilənlər bazasının əsasında

ye kunlaşdırıcı  cədvəl  yaradılır. Bu cədvəldə yalnız sorğuya uyğun verilənlər top -

lanır.


Sorğular xüsusi qaydalara uyğun yazılır. Bu qaydaların toplusuna sorğu dili

[query language] deyilir. Ayrı-ayrı sistemlərin sorğu dili fərqli ola bilər, ancaq

onların əsasında, adətən, eyni ümumi prinsiplər dayanır. Avtomobillərlə bağlı

misa la yenidən baxaq. 

1.  Əgər bizə bütün göy rəngli avtomobilləri tapmaq lazımdırsa, onda kom-

püterə belə bir sorğu verilməlidir:

rəng = “göy”

Məmmədova məxsus avtomaşını axtarmaq üçün sorğu belə olacaq:

sahibi = “Məmmədov”

Sorğu


Sorğu dili

Sadə sorğu

Mürəkkəb sorğu

Hesabat


S

Ö

Z

L

Ü

K

2.9.

2.

VERİLƏNLƏR



BAZASI

49



2. Tutaq ki, bizə 2000-ci ildə buraxılmış avtomobillərin siyahısı lazımdır. Bu

hal da sorğu     

buraxılış ili = 2000

şəklində veriləcək. Əgər bizi 2000-ci ilədək buraxılmış avtomobillər

maraqlandırırsa, sorğunu belə vermək olar:

buraxılış ili < 2000

İkiqat bərabərsizlikdən də istifadə etmək olar. 

1990 <= buraxılış ili <= 1999

sorğusu 1990-cı ildən 2000-ci ilədək buraxılmış avtomobilləri tapıb çıxaracaq.

3. Sorğuda ayrı-ayrı sahələrin qiymətlərini də müqayisə etmək olar. Əgər bizə

buraxıldığı ildə qeydiyyatdan keçmiş avtomobillər lazımdırsa, sorğunu

belə vermək olar:

buraxılış ili = qeydiyyat ili

Bəzən əslində olmayan halların da, məsələn, buraxılmamışdan öncə qey-

diy-yatdan keçmiş avtomobillərin tapılması sorğusunu vermək olar:

qeydiyyat ili < buraxılış ili

Aydındır ki, belə hal olmamalıdır, ancaq bu cür sorğunun yerinə yetirilməsi

bazaya yanlış daxil edilmiş yazıları aşkar etməyə imkan verəcək.

4.  Sorğuda hesab əməllərindən də istifadə etmək olar. Məsələn, aşağıdakı sorğu

buraxılış ilindən 3 və daha artıq il vaxt keçəndən sonra qeydiyyata düşən avto-

mobilləri tapmağa imkan verir:

qeydiyyat ili – buraxılış ili > 3



5. İndiyədək baxdığımız sorğularda axtarış aparılan sahələrin qiymətləri qa -

baq cadan məlum idi. Ancaq çox zaman axtarılan qiymətlər dəqiq məlum

olmur. Bu halda sorğunu örnəklər (şablonlar) vasitəsilə vermək əlverişli

olur. Şablonlarda sahənin qiyməti dəqiq deyil, ulduz (*)  və sual işarəsinin

(?) köməyi ilə göstərilir. Bir sual işarəsi sahənin qiymətinin uyğun yerində

istənilən bir simvolun ola biləcəyini göstərir. Ulduz işarəsi də sahənin

qiymətinin uyğun yerində ixtiyari simvolun ola biləcəyini göstərir, ancaq

bu halda bir “*” işarəsinin yerində istənilən sayda simvol ola bilər.

50



Tutaq ki, sahiblərinin soyadı “C” hərfi ilə başlayan avtomobilləri tapmaq tə -

ləb olunur. Bu halda sorğu 

sahibi = “C*”

şəklində olacaq. Əgər bizi sahibinin soyadı “Cəlilli”, yaxud “Cəmilli” olan

avtomobillər maraqlandırırsa, sorğunu belə vermək olar:

sahibi = “Cə?illi”

Nömrəsində “3” rəqəmi olan maşınları tapan sorğu aşağıdakı şəkildə olacaq:

nömrə = “*3*”

İndiyədək qurduğumuz sorğuların hamısında axtarış yalnız bir sahəyə görə

aparılırdı. Belə sorğulara sadə sorğular deyilir. Çox zaman axtarışı bir neçə sahə

üzrə aparmaq lazım gəlir. Məsələn, tutaq ki, bizə bütün qara “Mersedes”lərin

siyahısı lazımdır. 

Marka = “Mersedes”

sorğusu bizə bütün “Mersedes”ləri tap-

mağa imkan verəcək, ancaq onların içərisində hər cür rəngdə olanları ola bilər.

Eynilə, 


rəng = “qara”

sorğusu bütün qara rəngli avtomobilləri seçib ayıracaq,

yəni seçilmiş maşınların içərisində hər markadan ola biləcək. Belə məsələləri həll

etmək üçün mürəkkəb sorğulardan istifadə olunur. İki sadə sorğunun bir-

ləşməsindən ibarət olan  

marka = “Mersedes” və rəng = “qara”

sorğusu məhz bizə lazım olan siyahını verəcək. 

Aşağıdakı sorğu nömrəsi 3-lə başlayan və sahibinin soyadı “Vəlizadə” olan

“BMW” markalı avtomobilləri axtarıb tapacaq: 

marka = “BMW” və nömrə = “3*” və sahibi = “Vəlizadə”

İndi tutaq ki, bütün qara və göy rəngli maşınları tapmaq tələb olunur.    

rəng = “qara” və rəng = “göy”

sorğusu uğursuz olacaq, çünki şərtdəki “və” bağlayıcısı avtomobilin rənginin

eyni zamanda həm qara, həm də göy olmasını bildirir. Bu isə, aydındır ki, ola

bilməz. Belə məsələni həll etmək üçün sorğu

rəng = “qara” və ya rəng = “göy”

şəklində verilməlidir.

Bəzən hər hansı şərti ödəməyən yazıları tapmaq lazım gəlir. Tutaq ki, rəngi

qırmızı olmayan avtomobilləri tapmaq lazımdır. Bunu aşağıdakı sadə sorğu ilə

etmək mümkündür: 

rəng <> “qırmızı”

2.

VERİLƏNLƏR



BAZASI

51



Yüklə 0,62 Mb.

Dostları ilə paylaş:
1   ...   10   11   12   13   14   15   16   17   ...   21




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©www.genderi.org 2024
rəhbərliyinə müraciət

    Ana səhifə