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

У FoxPro можна зразу ж працювати з багатьма БД.Крім того є можливість встановлювати різнобразний зв'язок між ними.Показник записів в таких повязних базах буде рухатись синхронно.База в якій показник



Робота з декількома БД

У FoxPro можна зразу ж працювати з багатьма БД.Крім того є можливість встановлювати різнобразний зв'язок між ними.Показник записів в таких повязних базах буде рухатись синхронно.База в якій показник рухається довільно вважається старшої старшою бази –зветься молодшою.В цих базах повинні мати поля які несуть якийсь загальний признак інакше зв'язок між цими базами немає сенсу також запускається поєднання бази з іншими.

1.Поняття про робочі області

2.Доповнення файлів

3.Обновлення файлів

4.Обьєднання файлів

1.Поняття про робочі області

У FoxPro можна обробляти зразу ж декілька файлів БД до 25.Кожний такий файл типу DBF і всі допоміжні файли (наприкла індексні) відкриваються в своїй окремій робоччій області.Перехід з області в область здійснюється командою:Вибір робочої області:SELECT<робоча область/ псевдонім>

Перші десять робочих областей мають поміри від 1-10 або імена A-I.Області з 11-25 позначаються іменами W11-W25.Якщо параметр задати =0,;0здійснюється перехід у першу рбочу область.Крім того робочі області і файли БД можуть індетифікуватись так званими псевдонімами.Псевдонімом області по замовченню є само імя файла БД яке знаходиться в цій області.В якості псевдоніма можна вказати і будь-яке інше слово в команді USE.Використання псевдоніма дозволяє при роботі з різними базами даних звати іх одним імям (псевдонімом) це робить програму незалежною від імені конкретної бази.

Область вякій ми знаходимось у даний момент часу зветься активною областю.І в ній можна працювати з БД яка тут знаходится.Водночас в одній команді можна мати доступ к полям інших баз.В таких випадках імя поля з неактивної бази –составное.Це означає що перед іменем поля повинно іти імя робочої області або псевдонім які вмділяються знаками ‘’ _’’ і “>”або”.”

<робоча область\ псевдонім><імя поля> або < робоча область\ псевдонім >.< імя поля >

Наприклад:Якщо БД відкрита в область А або 1,то для поля.fam бази STUD.DBF імена імена будуть ідентичні

STUD. Fam або STUD – fam

A.fam або A- fam

Робоча область в складному імені задється будь-яким дозволеним образом (буквою,імям,її бази даних,псевдонім),але не номером.Номер можна вказувати в команді SELECT і в функціях.В кожній області підтримуються свої показники записів на положення яких не впливає перехід між областями.При входженні в СУБД активізується область 1(або А) і якщо вм працюєте з однією базою даних то відкривати область не потрібно.



2. Доповнення файлів

При роботі з БД виникає необхідність обьєднати певні частини іформації,які записані в окремих файлах однакової структури.Доповнення відкритого файлу даних записами з іншого файлу даних здійснюється командою:

APPEND FROM <імя файлу>[FOR \WHILE<умова> тут < імя файлу > -це імя файлу із якого беруться записи для доповнення попередньго відкритого FOR файлу даних.

FOR або WHILE<умова>-задають додаткові умови обєднання файлів.

Напрклад,маємо дві БД SYUD.DBF і SYUD1.DBF

Однакової структури (ЕН2-3 та ЕН2-4)

Необхідно перший файл доповнити записаний іншого тобто виконати обєднання файлів БД по вертикалі

No\ п Fam …………………………………………………………………………………

+

No\ п Fam …………………………………………………………………………………

USE STUD

APPEND FROM STUD1

GO TOP

BROWSE

Oбновлення файлів

Зрозуміло що з часом певну інформацію що міститься в файлах даних необхідно відновлювати.Наприклад ціни на сировину обладнання продукти через певний прміжуток часу змінюється.Поточні зміни цін краще виконувати в допоміжному файлі даних і тільки після їх перевірки здійснювати обновлення відповідних даних в основному файлі.Зведення окремих даних загальну форму теле виконується за допомогою обновлення файлів.

Наприклад,маємо

SKLAD1.DBF

KOD PRODUCT KIl

A Виріб А 90

В Виріб В 70

С Виріб С 100

 

SKLAD2.DBF

KOD PRODUCT KIL

 

B Виріб В 30

С Виріб С 40

 

Необхідно утворити загальний звіт

SKLAD.DBF

KOD

PRODUCT

KIL

 

A

Виріб А

 

B

Виріб В

 

С

Виріб С

 

Обновлення виконується:

UPDATE ON<ключове слово> FROM<область>

REPLACE <поля>WITH<вираз>

[,<поля>WITH<вираз>…][R ANDOM ]

Команда UPDATE змінює поля слова WITH такі вирази можуть використовувати поля іншої БД із указаної робочої області.Обновлення виконується тільки для тих записів для яких співпадають значення ключового поля.

Попередньо обидва файли повинні бути упорядковані або проіндексовані по ключовому полю.

Якщо задана опція R ANDOM фа й л указаний в опції FROM може бути неупорядкованим.

Файл що обновлюється має бути активним а файл що використовується для обновлення відкритими в робочій області указаної в опції FROM.

SELECT a

USE SKLAD1 IN a

INDEX ON Kod TO skl1 kod

SELECT b

USE SSLAD2 IN b

INDEX ON Kod TO SKL2Kod

SELECT C

USE SKLAD

INDEX ON Kod TO SKL Kod

UPDATE ON Kod FROM a

REPLASE Kil WITH a.ril+b.kil

GO TOP

BROWSE

Об’єднання файлів

“Горизонтальне” об’єднання може здійснюватися як повністю так і частково.Аналогічно можна об’єднати дві БД.

Наприклад:

BOOK1 BOOK2

NOM

FAM

DATA

 

 

 

 

NOM

FAM

адреса

телефон

 

 

 

 

JOIN WITH <область>TO<імя повного файлу>TO<>[FIELDS<список полів>][FOR<умова>]

Новий файл утворюється з полів активної БД і іншої БД указаної робочої області після WITH.

Команда JOIN послідовно розглядає записи активної БД і аналізує задачу після FOR умову.Якщо умова виконується то поля усього запису доповнюються полями відповідного запису іншої БД і утворений запис записується в повний файл.

Для забезпечення відповідності між записами файлів в умові записується вимога збігу значень спільних ключових полей.

Наприклад спільне ключове поле NOM (FOR a NOM=b.NOM)

Опція FIELDS дозволяє задати список полів які необхідно включити в нову БД.Якщо ця опція відсутня то спочатку беруться всі поля активної БД,а потім вони доповнюються полями БД із указаної робочої області.

Загальна кількість полів неповинна перевищувати 225.

Для більш швидкого виконання JOIN треба обидва файли попереднього

Про індексувати по спільному ключовому полю.

SELECT b

USE BOOK1 IN b

INDEX ON NOM TO BOOK1NOM

SELECT a

USE BOOK2 IN a

INDEX ON NOM TO BOOK2NOM

JOIN WITH b TO BOOK FOR NOM =b N0M

FIELDS NOM FAM ADRES TELEF b.DAT

SELECT C

USE BOOK

GO TOP

BROWSE

Встановлювання зв’язків між файлами

Можна задавати зв’язки двох видів

1.зв’язок виду один запис –з одним

2. зв’язок виду один запис з багатьма.

SET RELATION TO<ключ>INTO<область>[,<ключ>][ INTO,<область>…[FDDITIVE]

Встановлює зв'язок по <ключу>між файлом активної робочої області і файлами інших робочих областей указаних після сова INTO.

<Ключ> для зв’язку може бути трьох видів

1.іменем поля,рядком з іменем групи полів.

2.функцією RECN()яка повертає номер поточного запису.

3. арифметичним виразом

2. Зв'язок виду один запис з багатьма

SET SKIP TO [<область1>[,<область2>…]

Зв'язок встановлюється між активною старшою базою відразу з декількома молодшими базами попередньо в указаних<областях>

Вилучення зв’язку:SET SKIP TO без параметрів.

 

 


 


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




<== предыдущая лекция | следующая лекция ==>
майор служби цивільного захисту | Дослідження руху тіла під дією сили тяжіння.

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