Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
сбд порядок.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
488.56 Кб
Скачать

74.Визуалдық генератордың сұранысы не үшін қолданылады?

107.Генератор бұл-

Генератор(generator)—этрпоследовательновозрастающеечисло,которое

можетавтоматическивставлятьсявстолбецприпомощифункцииGEN_ID() .

Генераторычастоиспользуютсядляформированияуникальныхзначений

столбцов,входящихвпервичныйключ.БазаданныхInterBaseможетсодержать

любоеколичествогенераторов,ионимогутиспользоватьсяилиобновлятьсяв

любойтранзакции.

Создадимвбазеданныхstaf f.gdbтригенератора,которыебудутиспользо-ватьсядлязанесениязначенийвпервыйстолбец(столбецидентификатора)таб-лицSTAFF,DEPSиPOSS.

Генераторы167

ВыполнитеследующиекомандыSQL:

CREAT EGENERATORSTAFF_ID_GEN;

CREATEGENERATORDEPS_ID_GEN;

CREATEGENERATORPOSSIDGEN

ПрямойSQL-командыудалениягенераторовнесуществует,поэтомудляуда-лениякакого-либогенератораизбазыданныхиспользуют"обходнойманевр".

Деловтом,чтокрометаблиц,создаваемыхпользователями,вбазахданных

InterBaseсуществуюттакжеислужебныетаблицы,создаваемыеавтоматически

самимSQL-сервером.Длятогочтобыувидетьэтитаблицывпрограмме

IBConsole,необходимовыполнитькомандуView> -SystemData.

Ссылкинасоздаваемыегенераторызаносятсявслужебнуютаблицу

RDB$GENERATORS.Следовательно,длятогочтобыудалитькакой-либогенератор,

напримерPOSSIDGEN,достаточновыполнитьтакуюSQL-команду:

DELETEFROMRDB$GENERATOR

WHERERDB$GENERATORNAME='POS SIDGEN

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

Генератор дегеніміз – мәнін арнаулы gen_id() функциясы көмегімен бірге арттырып отыратын атауы бар сандық айнымалы.

Оны құру үішн ISQL терезесін ашып, мына сұранысты орындау керек:

Create generator bilet_gen - bilet_gen деген генератор құрды

Select max(bilet) from student – кестеден билеттің ең үлкен мәнін тапты

Set generator bilet_gen to 9 - ағымдағы мәнді (мысалы 9) шығарды

Gen_id(bilet_gen,1) – максималды мәнге 1-ді қосты

Insert into student(bilet, fio, adres, datar)

Values(gen_id(bilet_gen,1), ‘Петров’, ‘Петр’, ‘Петрович’, ’01.10.1988’) – 10-шы жазуды кірістірді.

109.Дб құрылымын өзгертетін команданы көрсет

16. Дббж-нің типтері

17. Дббж-нің типтері

Тип

Белгісі

Мән

Alpha

A

Символдық жол. Ұзындығы [1..255] аралығында.

Number

N

Мәні [10308,10308] аралығында алынатын 15 мәнді цифрлық нақты сан.

Short

S

Мәні [-3278-67..32767] аралығында алынатын бүтін сан.

Long Integer

I

Мәні [-2147483647..2147483647] аралығында алынатын ұзындығы 4 байттық бүтін сан.

Memo

M

Alpha-нің мәндер аралығынан үлкен болатын (> = 255 байттық) символдық жол.

Money

$

Соңына $ символы қойылатын ақшалық форматты сан.

Date

D

Дата

Logical

L

Мәні ақиқат (True) не жалған (False) болатын логикалық типті сан.

Auto increment

Кестеге жол қосылған сайын мәні бірге өсіп отыратын бүтін сан.

21. ДБ-на кіруге рұқсат анықтамасы жобалаудың қандай икезеңінде жүзеге асады?

178. ДБ-ның SQLServer 2000-әа құру үшін

284.ДБ-сын қорәау үшін, $cfg[‘Servers’] [$i] [‘user’]= қажет: