СУБД dBase b>
p>
Роботу підготував Милованов Сергій p>
ГОУ СПО Жірновскій нафтовий технікум p>
2005 p>
1. Введення h2>
У самому загальному сенсі база даних - це набір записів і
файлів, організованих особливим чином. У комп'ютері, наприклад, можна зберігати
прізвища та адреси друзів або клієнтів. Можливо, ви зберігаєте усі свої листи, і
вони згруповані по адресатам, а можливо, у вас є набір файлів з
фінансовими даними: отримані або виставлені рахунки, витрати за чековою
книжці і так далі. p>
У широкому розумінні, один з типів баз даних - це
документи, набрані за допомогою текстових редакторів і згруповані за темами.
Інший тип - файли електронних таблиць, що об'єднуються в групи по характеру
використання. p>
Якщо ви організований людина, то спеціальна
структура папок і підпапок допоможе вам впоратися з кількома сотнями
електронних таблиць або ярликів. У цьому випадку ви є диспетчером бази
даних. p>
Але якщо розв'язувана вами завдання стає занадто
складною: зібрати інформацію про всіх клієнтів і замовленнях, якщо дані розкидані
по окремих текстових файлів і електронних таблиць; зберегти зв'язки між
файлами при введенні нової інформації і так далі, то вам необхідна система
управління базами даних (СУБД). p>
СУБД dBASE, описана мною в цій роботі,
являє собою інтегроване середовище для створення і маніпулювання з
табличній БД і за твердженням розробників, підтримує реляційну модель
даних. Крім середовища є ряд додаткових програм, таких як адміністратор
доступу до файлів в мережі, предкомпілятор, Run-Time модуль для виконання
програм і пр. p>
2. Основні елементи СУБД типу dBASE h2>
Нагадаємо деякі терміни, які використовуються в теорії
реляційних баз даних. Будемо представляти інформацію, що становить базу
даних, у вигляді сукупності прямокутних таблиць. p>
Поле - найменший пойменований елемент інформації,
що зберігається в БД і розглядається як єдине ціле. Поле може бути представлено
числом, літерами або їх поєднанням (текстом). Наприклад, у телефонному довіднику
полями є прізвище та ініціали, адреса, номер телефону, тобто три поля,
причому всі текстові (номер телефону також розглядається як деякий
текст). p>
Запис - сукупність полів, що відповідають одному
об'єкту. Так, абоненту телефонної мережі відповідає запис, що складається з трьох
полів. p>
Файл - сукупність пов'язаних з будь-якою ознакою
записів (тобто відношення, таблиця). Таким чином, в простому випадку база даних
є файл. p>
Всі дані в БД розділені за типами. Говорячи точніше, вся
інформація полів, що належать одному колонку (домену), має один і той же
тип. Такий підхід дозволяє ЕОМ організувати контроль введеної інформації. P>
При визначенні полів БД кожне поле може бути
віднесено до одного з наступних типів: p>
• символьний тип, позначення С (character); p>
• числовий тип, позначення N (numeric); p>
• логічний тип, позначення L (logical); p>
• тип дати, позначення Data; p>
• приміток, позначення Memo. p>
Кожен тип служить для зберігання специфічної
інформації. У полі типу С можна розміщувати будь-які наявні на клавіатурі символи:
літери, цифри, розділові знаки і т.д. Символьне полі зберігається як текст,
вирівняний по лівому краю. Над символьними полями не можна виконувати будь-яких
обчислень. p>
У числовому полі можуть бути тільки цифри, знаки «плюс»
і "мінус", десяткова крапка. Числа вирівняні по правому краю. Над числовими
полями можна виконувати обчислення. p>
Поле логічного типу містить величини, які можуть
приймати тільки одне з двох значень: істинно або хибно. p>
Поле типу дати може містити реальні дати в
поданні, прийнятому в США (місяць/день/рік) або в європейських країнах. p>
Опис всіх імен, типів і розмірів полів складають
структуру бази даних, яка зберігається в пам'яті разом з даними. Цю
структуру завжди можна переглянути і при необхідності виправити. Слід
розрізняти структуру файла та інформацію, що міститься в ньому. Основна відмінність
між структурою та інформацією полягає в тому, що структура залишається незмінною,
а інформація змінюється при кожному редагуванні або введенні. p>
Сімейство СУБД dBASE. Серед СУБД для ПК найбільш
поширеним у світі є сімейство dBASE фірми «Ashton-Tate». Така
популярність пояснюється частково історично, так як ця СУБД з'явилася однією
з перших на ринку програмних продуктів даного профілю; не в меншій мірі
цьому сприяла вдалість закладених основ конструкції СУБД і командного
мови. Одна з найбільш широко використовуваних (в даний час застарілих) версій
цього сімейства - dBASE III +. p>
У новій версії dBASE IV концепція СУБД і командний
мова набули значного розвитку, що дозволило усунути недоліки
попередньої версії, а також істотно збагатити палітру засобів обробки
даних і поліпшити інтерфейс користувача. p>
До числа СУБД реляційного типу, призначених для
ПК, відносяться сімейство dBASE (dBASE II, III, 111 + і IV), Clipper, Foxbase,
R: BASE, Paradox та ін У цих СУБД запису і, відповідно, поля мають звичайно
фіксовану довжину (найчастіше довжина такого запису досягає 4000 ... 5000 байт).
Виняток становлять поля типу Memo, що використовуються, наприклад, у СУБД сімейства
dBASE. Число полів в перерахованих СУБД варіюється від 128 до 1024. P>
Довжина поля залежить від типу поля і може становити від
255 до 4000 байт для текстових полів, до 20 байт для числових полів і має
фіксовані значення для полів типу дати (8 байт) і логічних полів (1
байт). Поле типу Memo служить для зберігання великих масивів текстової інформації
і зберігається в окремому файлі БД, але сприймається як поле у складі основного
файлу БД. Це поле має плаваючу довжину, яка визначається обсягом введеної
текстової інформації, і може досягати 32767 байт. p>
Більшість СУБД реляційного типу для ПК дозволяють
створювати файли з числом записів до 1 млрд. і об'ємом до 2 Гбайт. Зазвичай
обмеженням на число і обсяг записів, в першу чергу, виступає ємність
зовнішньої пам'яті ПК на магнітних дисках. p>
До складу багатьох СУБД, призначених для роботи на
ПК, входять три основні компоненти: командний мова, що інтерпретує система
або компілятор для перетворення команд до виконання на увазі і засоби
взаємодії користувача з СУБД (інтерфейс користувача). p>
Командний мова служить для виконання і забезпечення
необхідних операцій з даними - дозволяє створювати структури файлів БД і
маніпулювати даними, створювати прикладні програми, екранні форми введення та
виведення інформації і т.д. Структура і можливості мови в значній мірі
визначають вигляд конкретної СУБД, її можливості. До складу командного мови ПК
також зазвичай входять спеціальні команди з установки параметрів і станів
системи (SET-команди), а також функції, призначені для різних видів
обробки даних та виконання допоміжних дій. p>
У СУБД команди можна виконувати по одній (після набору
з клавіатури) або групами команд в автоматичному режимі, попередньо
записаних до спеціального (програмний) файл. Команди мови СУБД записуються в
текстовій формі, близькій до звичайного мови. Для того щоб ПК могла виконувати
таку команду, її треба перетворити на вигляд здійснимих машинних команд. p>
Існує два принципово різних способи такого
перетворення. У першому способі використовується інтерпретує система, яка
перетворює по черзі команди в здійснимих вигляд перед їхнім безпосереднім
виконанням. У другому способі спочатку вся вихідна програма перетвориться
(компілюється) в програму з здійснимих машиною команд і потім ця програма
виконується. p>
Перший спосіб виконання команд СУБД має те
перевагу, що вихідна програма займає порівняно небагато місця і
пам'яті. Крім того, цей спосіб дозволяє виконувати команди по одній в режимі
введення з клавіатури або в режимі, керованому за допомогою меню. Проте виконання
вихідної програми за допомогою інтерпретації команд відбувається досить
повільно. Другий спосіб на відміну від першого дозволяє виконувати програму
значно швидше, але програма, складена з машинних команд, займає
значно більше оперативної пам'яті. p>
Взаємодія користувача з СУБД, у якій використовується
інтерпретує система, звичайно може здійснюватися в режимі, керованому з
допомогою меню, і рідше, введення команд з клавіатури. Перший режим дає можливість
користувачам працювати з пакетом СУБД, не знаючи командного мови. Зміст
виконуваних команд записується в позиціях меню природною мовою.
Користувач вибирає потрібну позицію меню і натискає клавішу виконання
команди. Зазвичай в меню включають досить широкий круг команд мови СУБД,
що дозволяють виконувати багато операцій з обробки даних, проте далеко не
все. При використанні режиму введення команд з клавіатури потрібно знати їх
синтаксис і способи застосування. Цей режим застосовується вже більше
підготовленими користувачами. Ознакою цього режиму СУБД служить будь-якої
знак (наприклад, крапка в лівому нижньому куті екрану), який служить запрошенням
для набору команди. Надалі для простоти будемо називати цей режим просто
командним. p>
Останні версії таких СУБД, як dBASE, RBASE та ін,
містять генератори прикладних програм, що дозволяють користувачам без знання
командного мови створювати програми середнього ступеня складності. Ці кошти
можуть застосовуватися як непідготовленими користувачами, так і професійними
програмістами для зменшення трудовитрат при розробці прикладних програм. p>
Як вже зазначалося, перша створена в цьому класі
програмою була dBASE II, створена Уейном Ретліффом (США) в 1981р. Варіанти
цієї системи до цих пір використовуються для цілей навчання на навчальних ЕОМ. Незабаром
ця система була вдосконалена, а її можливості розширені. З'явилися СУБД
dBASE III і dBASE III +, які стали на довгий час стандартом систем управління
базами даних для персональних комп'ютерів. Пізніше одержали поширення
системи FoxBase, FoxPro і Clipper - всі, хто має набір команд, схожий на СУБД
сімейства dBASE, і використовують ту саму організацію даних у файлах з типовим
розширенням. dbf (Data Base File - файл бази даних), СУБД dBASE IV. Мови цих
систем послужили основою для створення величезного числа прикладних
інформаційно-пошукових систем, автоматизованих робочих місць (АРМ) в
різних предметних областях. p>
Система управління базами даних dBASE IV значно
посилена в порівнянні з dBASE III + за багатьма параметрами (нижче в дужках вказані
дані для dBASE III +). Зокрема, можна створювати двовимірні масиви
змінних загальним обсягом до 1170 елементів, може бути відкрите до 99 (16)
файлів, збільшено максимальне число змінних - 15000 (265), число полів в
файлах БД - 255 (128), число відкритих індексних файлів -10 (7) і т.д. Як вже
зазначалося вище, командний мова dBASE IV значно розширений і поліпшений по
порівняно з командним мовою dBASE III +. p>
Включення в мову dBASE IV нових команд дозволило
істотно поліпшити наступні функції пакету СУБД сімейства dBASE: p>
• розробку ієрархічних систем меню прикладних
завдань; p>
• розробку екранних форм вводу та виводу даних; p>
• організацію введення і виведення інформації в окремі
вікна на екрані; p>
• виведення даних на друк; p>
• можливості з пошуку і обробці даних у файлах
БД; p>
• забезпечення роботи в середовищі ЛОМ та ін p>
Команди типовою СУБД для персональних комп'ютерів
призначені для виконання наступних функцій: p>
• опису БД; p>
• наповнення БД; p>
• редагування БД; p>
• пошуку інформації в БД; p>
• формування і виведення на екран або принтер
інформації у вигляді звітів. p>
3. Керуючий центр h2>
Подання про можливості пакета dBASE IV можна
отримати при знайомстві з керуючим центром (УЦ), що реалізує інтерфейс
користувача, керований меню. До складу НЦ входять шість меню: p>
• меню Data ( «Дані») для створення, зміни
структури файлів БД, введення, оновлення та відображення даних на екрані; p>
• меню Queries ( «Запити») для формування та
виконання запитів на вибірку та оновлення даних; p>
• меню Forms ( «Форми») для розробки екранних форм
введення та виведення інформації; p>
• меню Reports ( «Звіти») для розробки форм звітів
і виведення їх на друк; p>
• меню Labels ( «Марки») для розробки форм марок і
виведення їх на друк; p>
• меню Applications ( «Прикладні програми») --
генератор розробки прикладних програм. p>
Опції УЦ і розташування меню на екрані відображають
послідовність роботи користувача при розробці прикладної інформаційної
завдання. Робота зазвичай починається зі створення структури файлів БД, які
потрібні для її вирішення. p>
Після створення структур файлів БД прикладний завдання
потрібно ввести в них дані. p>
Введення та оновлення даних в меню «Дані» виконується
на екрані в стандартних формах. Ці форми не завжди цілком зручні для
користувача. У УЦ передбачено меню «Форми», що дозволяє розробляти
власні екранні форми для введення і виведення інформації. p>
Типи файлів і їх розширення p>
Файл p>
Вікно
УЦ p>
Файл
розробки p>
Файл
кодів p>
здійснимих
файл p>
БД p>
Data p>
. dbf p>
_ p>
_ p>
Запит
на вибірку p>
Queries p>
, qbe p>
- p>
. qbo p>
Запит
на оновлення p>
» p>
. upd p>
- p>
. upo p>
Вибірка
dBASE Пн- p>
» p>
. vue p>
- p>
- p>
Екранна
форма p>
Forms p>
. sqr p>
. fmt p>
. fmo p>
Звіт p>
Reports p>
. frm p>
• frg p>
. fro p>
Марка p>
Labels p>
.1 И p>
. Ibg p>
. lbo p>
Прикладна
програма p>
Applications p>
- p>
• prq p>
. dbo p>
SQL-програма p>
» p>
- p>
. prs p>
. dbo p>
Програма,
створена p>
» p>
• app p>
• prg p>
. dbo p>
генератором
приклад- p>
них
програм p>
Відбір інформації з одного або декількох файлів БД
можна виконати за допомогою меню «Запити». Відібрані дані можна виводити на
екран в розроблених раніше формах або на друк. p>
Меню «Запити» дозволяє також пов'язувати між собою
декілька файлів БД, що дає можливість при розробці структури файлів БД
прикладної задачі уникнути дублювання інформації. p>
Завершальний етап процесу обробки інформації - висновок
отриманих даних на екран, принтер або зовнішні носії. Для створення форм
вихідних документів призначене меню «Звіти». p>
Таким чином, меню УЦ дозволяє виконувати всі етапи
процесу обробки інформації, починаючи від її запису на носії і завершуючи
видачею необхідних вихідних документів. p>
Панель УЦ складається з шести вікон. Вікно Data містить
імена файлів БД. Вікно Queries показує імена файлів запитів на вибірку та
оновлення даних. У вікно Forms висвічуються імена файлів екранних форм вводу
і виведення інформації. Вікно Reports містить імена файлів форм звітів, а вікно
Labels - імена файлів форм марок. P>
Крайнє справа вікно Applications висвічує імена
програм або будь-яких текстових файлів. p>
Для створення файлів відповідних типів у вікнах
панелі УЦ є позиція (створити). Після вибору цієї позиції
висвічуються екрани, призначені для виконання операцій зі створення файлу
відповідного типу. Ці ж екрани розкриваються і при виборі імені файлу в
вікні. p>
Крім основних функцій роботи з файлами різних
типів керуючий центр зазвичай має широкий набір сервісних функцій,
що дозволяють працювати з каталогами, визначати макропоследовательності клавіш,
виконувати експорт і імпорт даних у файли інших систем, захищати дані,
встановлювати параметри системи, копіювати, перейменовувати, видаляти файли,
запускати DOS-програми і т.д. p>
4. Створення структури файлів h2>
Розглянемо тепер, як створити структуру файлу БД з
допомогою УЦ. Для цього треба вибрати позицію вікна Data на панелі
УЦ. На екрані з'явиться таблиця, що складається з шести колонок з іменами:
порядковий номер поля (Num), ім'я поля (Field Name), тип поля (Field Type),
ширина поля (Width), кількість дрібних десяткових знаків числа (Dec), ознака
індексування поля (Index). Кожний рядок цієї таблиці містить інформацію про
одному полі запису файлу БД. Ім'я поля може включати до 10 буквено-цифрових
символів, Але обов'язково повинно починатися з літери. Тип поля (символьний --
Character, числовий з фіксованою точкою - Numeric, числовий з плаваючою
крапкою - Float, текстовий - Memo, логічний - Logical і типу дати - Date)
можна вибрати клавішею ПРОБІЛ або набрати безпосередньо з клавіатури. p>
Після того як введено опис для всіх полів файлу
БД, створену структуру слід зберегти на диску. Для цього треба спочатку
клавішею F10 викликати меню екрана створення/модифікації структури БД і потім
вибрати позицію (зберегти структуру файлу БД) меню Layout. p>
Введення нових та оновлення існуючих записів
виконується в одних і тих же стандартних екранних формах Browse і Edit.
Попередньо треба файл БД відкрити. Факт відкриття файлу наголошується на панелі
УЦ тим, що його ім'я переміщується вище риси під слово. Перебуваючи
на екрані розробки структури файлу БД, після її закінчення можна відразу перейти
до введення даних за допомогою вибору позиції
меню Append. p>
Крім того, введення даних в стандартні екранні форми
можна виконати з УЦ. Для цього після встановлення курсору на ім'я файлу у вікні
Data треба натиснути клавішу ENTER, а потім вибрати позицію.
Після цього висвітиться один зі стандартних екранних форм: Browse або Edit. P>
У формі Browse дані висвічуються в табличному вигляді
(рядок таблиці - запис файлу), при цьому не всі поля можуть одночасно
розміститися на екрані. p>
У формі Edit поля одного запису розміщуються одне під
іншим на одній або декількох сторінках екрану (в залежності від кількості
полів). Розкриття наступних сторінок виконується клавішею PgDn. P>
Після того, як створена структура файлу БД і введена
інформація, звичайно потрібно відбирати і виводити на екран або на друк ті
дані, які відповідають поставленому завданню. Для цього формуються запити на
відбір необхідних даних. p>
Запити можна створювати за допомогою шаблону файлу
(запити за зразком) і в спеціальному вікні, яке розміщується у вікні Queries
панелі УЦ. p>
Формування шаблону виведення доцільно виконувати в
два етапи: спочатку вводити відразу всі поля файлу і потім видаляти непотрібні. p>
Крім звичайних полів в шаблон висновку можна поміщати
обчислювані поля. p>
У порожню графу шаблону обчислюваних полів вводиться з
клавіатури обчислюється вираз, який включає одне або кілька імен
полів файлу БД, і оператори виконання дій з ним. У число цих операторів
входять арифметичні та логічні оператори, а також функції dBASE. p>
Є можливість розробляти власні форми
введення і виведення даних на екран. У цих формах поля файлів БД можна розміщувати в
будь-якому місці екрану, супроводжуючи їх пояснювальними написами, обводить в рамки і
вводити інші оформлювальні елементи. p>
Розроблені форми являють собою програмні
файли, які можна записати на диск і потім використовувати багато разів для
перегляду і оновлення інформації на екрані в зручному для користувача вигляді. p>
Розробка екранної форми починається з вибору позиції
вікна Forms панелі УЦ. Після цього висвічується горизонтальне
меню, що включає позиції,,,
. Вибір цих позицій призводить до відкриття різних меню,
що дозволяють виконувати певне коло дій щодо створення екранної форми. p>
Так, меню Layout призначене для загального оформлення
екранної форми, реалізації короткого способу введення всіх полів на екран і
призначення файлу БД, якщо він не був відкритий раніше. p>
Додавання полів у екранну форму по одному
здійснюється за допомогою позиції меню Fields. p>
Розробка звітів є завершальним етапом
технології обробки інформації. При видачі звітів можуть використовуватися
вибірки даних, отримані в результаті виконання запитів, і вихідні файли
БД. P>
Розробка звітів виконується у вікні Reports УЦ.
Форма звітів створюється на екрані. У неї можна включати такі елементи:
поля з поточного файлу БД або вибірки, обчислювані поля, які створюються
спеціально для звітів, текстовий матеріал, рамки та лінії. Текст довгих
символьних полів можна розміщувати і розгортати в колонках заданої ширини. p>
У число стандартних частин звіту входять: заголовок
сторінки, введення (заголовок) звіту, власне звіт (тіло звіту), підсумки
(висновок) звіту та підставу сторінки. p>
Описаний УЦ дозволяє виконувати багато операцій без
знання командного мови dBASE IV за допомогою режиму керованого меню, однак
основний режим роботи СУБД заснований на використанні командного мови. p>
5. Командний мова СУБД h2>
Операції СУБД реалізовані у вигляді команд, які, як
правило, можна використовувати незалежно, вводячи їх за допомогою клавіатури - це,
так званий, командний режим СУБД. З цих команд можна складати
прикладні програми, створюючи таким чином системи «під ключ»,
орієнтовані на непідготовленого користувача. Це, так званий,
програмний (пакетний) режим роботи в СУБД. p>
До складу елементів командного мови входять команди,
SET-команди, функції, змінні та масиви. P>
Команда записується у вигляді рядка слів, до якої
входить дієслово - основне слово, яке визначає зміст операції, виконуваної
командою, список виразів та ключові слова з аргументами. Структура командного
рядка називається синтаксисом команди. Багато команд обробки файлів будуються
за такою формою: p>
[] []
[FOR] [ІН1ЬЕ] [ТО FILE/ТО PRINTER p>
/ТО ARRAY p>
/ТО [ALL [LIKE/EXCEPT]]
[IN] p>
Квадратні дужки означають використання ув'язнених у
них елементів синтаксису на вибір. У кутових дужках, наступних після
ключового слова, записуються його аргументи. Косая риса, нахилена вліво
(/), Це означає, що може бути записано тільки одне з розділених цим знаком
ключових слів. Кутові, квадратні дужки і коса риска в записі команди для її
виконання не вказуються і служать тільки для пояснення синтаксису. p>
є комбінацією
імен полів файлів БД, змінних, елементів масивів, констант, функцій,
системних змінних і операторів. Всі дані у виразі повинні бути одного
типу. Якщо у виразі потрібно використовувати дані різних типів, їх треба
перетворити на один тип спеціальними функціями. Вирази в списку можуть бути
різного типу. p>
Оператори у висловах позначають операції з даними і
позначаються спеціальними символами. У dBASE використовуються чотири типи операторів:
математичні, оператори відносин, логічні та рядкові. p>
Межі в наведеному вище синтаксисі команди
вказують ті записи файлу БД, які будуть доступні при його обробці. У
як ключові слова кордонів можуть бути: RECORD - доступна тільки
один запис із заданим номером; NEXT - доступні всі записи, починаючи з
номера n; ALL - доступні всі записи файлу БД; REST - доступні записи, починаючи з
поточної до кінця файлу. p>
Опції FOR WHILE і визначають умови відбору записів
для обробки. Ці параметри мають пріоритет перед кордонами при визначенні
доступу до записів. Опція FOR визначає доступ до обробки, починаючи з першого
запису і до кінця файлу БД, a WHILE - починаючи з поточного запису і до тих пір,
поки умова має логічне значення «Істина» (True або. Т.). p>
Опція ТО керує виведенням інформації, обробленої
командою. У ряді команд вихідний потік можна направити у файл на диску, на
принтер, в масив (або змінну). p>
Опція ALL LIKE дозволяє відібрати або, навпаки,
виключити серед імен файлів, полів файлів БД і змінних ті, які
відповідають заданим шаблоном. p>
Особливим різновидом команд є SET-команди,
встановлюють параметри середовища, в якому виконуються звичайні команди.
Застосовуються дві форми цих команд: p>
SET ТО і p>
SET ON/OFF p>
Перша форма встановлює значення параметра, а
другий включає (ON) або вимикає (OFF) його дія, тобто встановлює
стан. Ці команди можна виконувати в програмах, в командному режимі, можна
також занести їх у спеціальний файл з ім'ям Config.db, що визначає параметри
середовища на весь сеанс роботи з пакетом dBASE. p>
Створення файлу БД здійснюється командою CREATE
. Для модифікації створеної структури файлу використовується
команда MODIFY STRUCTURE. p>
Для відкриття файла БД використовується команда p>
USE [/?] [IN] p>
[INDEX] p>
[ORDER [TAG]/[OF]] [АИАЗ] [EXCLUSIVE] [NOUPDATE]
, p>
яка відкриває існуючий файл БД та пов'язані з
ними файли. mdx і. ndx в поточної робочої області. p>
Для створення індексних файлів типу. ndx і. mdx
використовується команда p>
INDEX ON ТО/ p>
TAG [OF] [UNIQUE] [DESCENDING] p>
Для відкриття індексних файлів використовується команда p>
SET INDEX TO [/? [ORDER
[TAG]/[OF ]]] p>
Крім широкого набору команд типовий мова СУБД типу
dBASE персонального комп'ютера включає кілька десятків або навіть сотень
вбудованих функцій. Функції можуть використовуватися на місці змінних і констант
в командах. Після вказівки імені функції обов'язково йдуть круглі дужки, навіть
якщо функція не вимагає ніяких параметрів. p>
Деякі функції СУБД типу dBASE p>
Функція p>
Призначення p>
RECNO () p>
Повертає
номер поточного запису відкритого файлу БД p>
BOF ()
EOF () p>
Повертають
логічний ознака початку і кінця відкритого файлу БД p>
RECCOUNT () p>
Повертає
число, записів у відкритому файлі БД p>
FOUND () p>
Повертає
логічний ознака успішності пошуку в БД командою SEEK p>
ЦКЕ (,
) p>
Порівнює
рядок з символьним виразом p>
UPPER
() p>
Перетворює
символьну рядок у верхній регістр p>
INKEY () p>
Повертає
код натиснутою клавіші p>
ERROR () p>
Повертає
номер помилки p>
CHR () p>
Повертає
букву за кодом p>
DATE () p>
Повертає
поточну дату p>
ROW ()
COL () p>
Повертає
номер поточного рядка та стовпця екрану p>
У мові dBASE IV використовуються також функції, які
(поряд з командами) дозволяють обробляти дані (в тому числі, виконувати
обчислення), а також визначати стану, наприклад, чи знаходиться покажчик
записів у кінці файлу: 7EOF0-Після імені функції зазвичай стоять круглі дужки,
у яких можуть міститися аргументи. Опції не можна використовувати
самостійно, а тільки разом з будь-якою командою. p>
Крім системних функцій у dBASE IV можна використовувати
функції, створені самим користувачем. p>
У мові dBASE використовуються змінні, тип яких
автоматично визначається перший в даній програмі присвоєнням їм значення.
Можливі типи: символьний, логічний, числовий, дата. P>
Крім простих змінних, в програмах та процедури
можна використовувати одно-або двовимірні масиви. Кожен елемент масиву
являє собою звичайну змінну. Представлення змінних у вигляді масиву
дозволяє значно розширити діапазон застосування змінних, а також, у ряді
випадків, полегшити реалізацію функцій, властивих змінним. Перед
використанням масивів спочатку їх треба оголосити командою p>
DECLARE p>
[{, p>
(, p>
[(, p>
()] {}] p>
В синтаксисі цієї команди опції вказуються фігурними
дужками замість звичайно прийнятих квадратних. Під час запису команди в програмі в
квадратні дужки полягають параметри (розмірність) масиву - кількість рядків і
стовпців. Якщо вказано одне число, то масив одновимірний. Формально двовимірний
масив з одним з параметрів, рівним одиниці, фактично є одновимірним:
DECLARE [12,1] або DECLARE [1,25]. P>
Приклади. p>
DECLARE Mas [8,4]
DECLARE Masi [10] STORE (15/10/89) TO Datl p>
[4,4] •] p>
& & Двовимірний масив & & Одновимірна
масив p>
Для введення даних в змінну або елементи масиву в
програмі використовується команда p>
STORE ТО/або альтернативна форма. p>
/=
. p>
6. Введення даних до бази та редагування h2>
Після того, як створена структура файлу БД, можна
вводити дані. Існують два стандартні екранні форми введення (і виводу)
інформації у файли БД: BROWSE і EDIT. Перша форма викликається командою p>
BROWSE [NOINIT] [NOFOLLOW] fNOAPPEND] [NOMENU] p>
[NOEDIT] [NODELETE] [NOCLEAR] [COMPRESS] [FORMAT]
[LOCK] [WIDTH] [FREEZE] [WINDOW
] [FIELDS [/ R] [/]
/ = [, [/ R]
[/]/= ]...] P>
У команді є ряд опцій, що дозволяють встановлювати
різні режими її використання. У число цих опцій входить група опцій,
що дозволяють призначити режими роботи з полями, і група опцій по розміщенню
полів на екрані. До складу першої групи входять наступні опції: NOEDIT,
дозволяє встановити режим тільки читання для всіх полів, NOAPPEND, не роздільна
додавати нові записи, і NODELETE, не роздільна позначати запису для
видалення. Опція FREEZE призначає для оновлення тільки одне вказане поле.
Інші поля висвічуються, але залишаються недоступними для редагування. Якщо
для зазначеного в опції FREEZE поля командою PROTECT відкрито тільки читання, то
оновлення не дозволяється. Опція FREEZE без імені поля скасовує раніше
призначену установку. p>
Поля висвічуються в тому порядку, який визначений
структурою файлу БД або зазначено в команді опцією FIELDS, що входить до складу
другої групи. Ця опція дозволяє вибрати поле і визначити порядок його
розташування в таблиці Browse. p>
Опція WIDTH встановлює верхню межу ширини
колонки для всіх полів у таблиці BROWSE. Ця ширина перекриває ширину поля,
призначену при створенні файлу БД. Якщо опції WIDTH і
використовуються одночасно, то приймається найменше значення. Дана опція,
як і попередня, не застосовується для полів типу Memo і логічних полів.
Значення числових полів і полів дати не будуть висвітлюватися, якщо значення
опції WIDTH менше ширини цих полів, призначених при визначенні структури
файлу БД. Опція FORMAT дозволяє розмістити поля в таблиці BROWSE в
черговості, визначеної екранної формою, яка встановлена командою SET
FORMAT TO. P>
Альтернативою команди BROWSE є команда EDIT p>
EDIT [NOINIT]
[NOFOLLOW] [NOAPPEND] [NOMENU] p>
[NOEDIT] [NODELETE]
[NOCLEAR] [] [FIELDS] [] [FOR] [WHILE] p>
Ця команда виводить на екран по одному запису файлу БД,
поля якої розміщуються по вертикалі. p>
Якщо потрібно оновити вміст полів файлу БД без
залучення даних з іншого файлу, наприклад помножити вміст числового
поля на задану величину, з'єднати вміст двох символьних полів і т.д.,
можна використовувати команду p>
REPLACE [] WITH p>
[, WITH 100 CASE Val> 10 OTHERWISE ENDCASE p>
Якщо потрібно коренастий процес тільки на два
напрямки, можна використовувати команду p>
IF
[ELSE], ENDIF p>
При реалізації операцій, що призначаються позиціях меню,
нерідко потрібно організувати цикли дій, що повторюються, наприклад
організувати обробку файлу БД і ін Це можна зробити за допомогою ряду команд і
їх комбінацій. Однією з таких є команда p>
хід фай p>
DO WHILE p>
[EXIT] p>
[LOOP] ENDDO p>
p>
p>
РУЕ p>
: p>
зац p>
яка забезпечує повторення послідовності
команд, укладеної між словами DO WHILE і ENDDO до тих пір, поки заданий
умова правдиве. Якщо зустрічається слово LOOP, то управління передається в початок
циклу команд, а при зустрічі слова EXIT здійснюється вихід з команди і
управління передається на першу команду після слова ENDDO, завершального дану
команду. p>
Попередні команди дозволяють визначити меню і
атрибути їх позицій. Для того щоб активізувати горизонтальне і
вертикальне меню (а також списки), використовуються команди p>
ACTIVATE MENU [PAD] p>
ACTIVATE POPUP p>
які викликають на екран заздалегідь певні
меню. p>
Список літератури h2>
Голіцина О.Л., Максимов Н.В. та ін, «Бази даних»
(навчальний посібник) p>
Могилев А.В., Пак Н.И. та ін, «Інформатика» p>
Майоров А.М. «Сучасні СУБД» p>