Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Зертханалық жұмыс № 29. Басқа үлгідегі файлдармен және кестелермен жұмыс.

Зертханалық жұмыс №19. Есеп беру құрастырушысы. | Зертханалық жұмыс №20. Топтастыру және сұрыптау. | Ескертпе | Ескертпе | Зертханалық жұмыс № 22. Кестелер және сұраныстарды баспаға беру. | Зертханалық жұмыс № 23. Файлдық операциялар | Зертханалық жұмыс № 24. Visual FoxPro бағдарламасында командалық жолдармен жұмыс. | Зертханалық жұмыс № 26. Visual FoxPro бағдарламасында кесте құру. | Зертханалық жұмыс № 27. Пішін құру. | Зертханалық жұмыс № 28. Кестеге алғашқы кілтті бекіту және құрамдас индекс құру. |


Читайте также:
  1. B) баспасөзде және өзге де бұқаралық ақпарат құралдарында хабарлау арқылы
  2. Eңбек қорғау және қауіпсіздік ережелері.
  3. ақтар: жазба деректері, материалдық және рухани мәдениеті, қоғамдық құрылысы.
  4. ақылау жұмысы. Кеден ісі. Өткен грамматикалық тақырыптарды қайталау.
  5. ақырыбы: Клеман және дезорма тәсілімен қатынасын анықтау.
  6. ақырып: Мемлекет аралық және сала аралық стандартизация.
  7. аңлы мемлекетінің пайда болуы, шекарасы басқа да маңызды мәселелері жайында. Қытайдың «Цянь Ханьшу»атты деректерінде.

Жұмыс мақсаты: Кестемен байланыс орнату және оларды сорттау, біріктіктіру, файлдармен жұмыс жасауды үйрену.

 

Байланысты орнату 1:1

Нақты мысал қарастырамыз. Name өрісіндегі әрбір жазудың stud кестесінде бірнеше рет оқу төлемін енгізу керек болған студенттің аты болады. Келесі өрістегі payment.dbf кестесінде барлық төлеушілер туралы ақпарат сақталады:

· Name – stud.dbf студенттің аты;

· Num – төлеген квитанция номері;

· Dpay – төлеген күні;

· Pay – төлеген суммасы;

Әрбір студенттің қашан және қанша төлегені туралы ақпаратты алу үшін осы Name жағдайындағы жалпы кілттік өрісте stud және payment кестелерімен байланысуы қажет. Stud кестесіндегі кілттік өріс қатынасын қондыру үшін сірә кестеде бірнеше жазулар қайталанбай осы өрістің мағынасы бірегей болуы тиіс. Бұдан басқа кілттік өріс өзгермейтін болуы керек. Қарсы жағдайда басқа кестедегі жазулармен байланысу мүмкін емес. Әрбір кесте өз жұмыс столында ашылады. Кестелермен байланысу үшін келесі команда қабылданады.

SET RELATION TO key INTO <Область1> [, key2 INTO <Область2>, …] [ADDITIVE]

 

ADDITIVE опциясы бір уақытта екі кестеден көп кестенің байланысуын қолдайды. Үш кестенің сызықтық байланысуына мысал қарастырамыз. Бірінші – one – key1 өрісі болады; Екінші – two – key1 өрісі және осы өрістің бір аттас индексі және сонымен қатар өрісі болады; Үшінші - three – key2 өрісі және осы өрістің бір аттас индексі болады.

 

USE one

* one активті а жұмыс облысында ашылады

USE two IN INDEX key1

* two key1 индексімен бірге

* b жұмыс облысында ашылады

USE three IN INDEX key2

* three key2 индексімен бірге

* с жұмыс облысында ашылады

SET RELATION TO key1 INTO b

* key1 c two SELECT b активті кестесімен байланысады

* two енді активті

SET RELATION TO key2 INTO c

* активті two, three –дегі key2 байланысады

BROWSE fields a. fa, b. fb, c. fc, a. key1:R

 

BROWSE командасының көмегімен кестемен байланысқан кез келген өрісті көруге болады. а.key1 ата-ана кестесінің кілттік өрісі ерекше назар аударуды талап етеді, себебі оның мағынасының кездейсоқ өзгеруі қондырылған байланысты бұзады. Сондықтан осындай жағдайды болдырмау үшін кілт жазамыз: R кілттік өрістің атынан кейін BROWSE командасын орындауда тек қана оқулық үшін пайдаланады. Назар аударыңыздар: әртүрлі кестедегі өріс сілтемелері қатынас орнату бағдарламасы үшін әріпсіз белгіленген жұмыс облысын көрсетеді, ал кестенің лақап аты жұмыс облысында ашуға қатты бейімделмеген. Осының алдында келтірілген мысалдағы команданы мына үлгіде пайдаланған дұрыс.

BROWSE fields one. Fa, two.fb, three.fc, one.key1:R

Кесте өрісіне кіру үшін SET FIELDS TO <өріс тізімі> / ALL командасы қолданылады.

Мысалы, SET FIELDS TO f1, temp=f2-f1командасының орындалуында қолайлы өріс f1 және есептелінетін өріс temp мағынасы f1 және f2 біртипті өріс мағынасынан пішінделеді.

ALL опциясы шек қоюды алып тастайды да барлық қолайлы кестенің өрісін жасайды. Аналогиялық әрекет параметрсіз SET FIELDS TO командасын иеленеді. Кіруге болатынын басқару үшін қайтарып алынған өрісте SET FIELDS ON / OFF қолданылады.

SET FIELDS ON –да тек қана қайтарып алынған өріске кіруге болады, OFF – барлық өріс. Бұндай жағдайда таңдап алынған өріс тізімі сақталады және қайтадан SET FIELDS ON командасын пайдалануы мүмкін. SET FIELDS TO <> командасы автоматты түрде SET FIELD ON орнатады. Қарастырылған мысалда үш кестенің сызықтық байланысы ата-ана кестесіндегі әрбір жазу тек қана біреуімен байланысуы тиіс, дәл біріншісі (қызының кестесіндегі белгіге сәйкес), ал қалғандары ескерілмейді. Мұндай тип қатынасы «бірі - біріне» деп аталады және 1:1 болып белгіленеді.

 

1:N қатынасын орнату

Белгілері сәйкес келетін барлық жазулармен байланысу үшін SET SKIP TO <облыс1>, <облыс2>, …, командасы қолданылады, себебі «бірі – көбіне жазуы» қатынасын орнатуға мүмкіндік береді және 1: N мен белгіленеді.

Мысалы, үш кесте бар:

· One key өрісіндегі a облысы;

· Two key өрісіндегі b облысы және осы өрістің key2 индексімен;

· Three key өрісіндегі облысы

One кестесіндегі әрбір жазуды барлық Two және Three жазуларымен кey өрісінде байланыстыру үшін келесіні орындаймыз:

 

USE one IN a

* one активті ашық

USE two INDEX key2 IN b

* two ашық бірақ а. SELECT облысында қаламыз

* а. USE three IN c облысында басқаша индексация болады

* three активті ашық INDEX on key to key3

* key SELECT a өрісінде three индекстейміз

*енді қайтадан актиті one SET RELATION TO key INTO b, key INTO c ADDITIVE

* one мен two және three кестелері 1:1 қатынасында белгіленді

SET SKIP TO b, c

* енді 1: N қатынасы белгіленді

DISPLAY ALL fa, b.fb, c.fc TO PRINT немесе TO FILE rel.txt

DISPLAY командасы барлық жазудың санаулы өрісін баспа шығару немесе мәтіндік файлды rel.txt кез келген уақытта қарауға және редактрлеу үшін экранға шығарады, келесі команданы орындау арқылы MODIFY FILE rel.txt

Келесі бұл команданың жалпы синтаксисі:

MODIFY FILE <мәтіндік файлдың аты>[NOEDIT] [NOWAIT] [ WINDOW <терезе аты>]

Опциялар:

· NOEDIT –редактрленген мәтіндік файлды блоктайды

· NOWAIT–ағымдық экрандағы басқа объектідегі активацияға мүмкіндік береді

· WINDOW<терезе аты> жүйе терезесіне емес алдын ала нақты пайдаланушыға пайдалануға мүмкіндік береді.

Барлық кестедегі синхронды көрсеткіштерді ауыстыру байланысынан құтылу үшін келесі команданы орындаңыз (бұл кестемен жұмыс жасауды баяулатады)

SET SKIP TO

SET RELATION TO

Кестелердің «ішінен» байланысқанын қарап Visual FoxPro 7.0. визуальды бағдарламасының көмегімен орындаңыз. Әсіресе бұл үшін айқын: жеңілдік және көрнекілік, ал ең бастысы – файлды тапсыруда орнатылған қатынасты сақтау мүмкіншілігі.

 

Кестелер арасындағы байланысты сақтау үшін пайдалануды көрсету.

Көрсетудің негізгі міндеті – деректер көзі сияқты кестеде көрсетілген деректердің синхронды өзгеруін қамтамасыз ету үшін өрістің логикалық байланысқан жиынтығын құру.

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

 

 


Дата добавления: 2015-08-02; просмотров: 102 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Зертханалық жұмыс № 28. Сұранысты шебердің көмегімен құру.| Зертханалық жұмыс № 30. Кестелерді біріктіру, кестені сорттау, деректерді конверциялау, импорттау және экспорттау.

mybiblioteka.su - 2015-2024 год. (0.016 сек.)