в пам’яті вилучаються.
Сортування та індексування баз даних.
Sort to <ім’я файла>On <ім’я поля 1> [/A] [/C] [/D] [, <ім’я поля 2>] [/A] [/C] [/D] [, ... ] [Ascending : Diskending] [<діапазон>] [For<умова>] [While <умова 1>] [Fields <список полів>] [Nooptimize] – сортує в активному файлі даних, і записує йього в файл даних під вказаним іменем по полях 1,2,3...
/A – по зростанню;
/D – по спаданню;
/C – ігноруються малі і великі літери.
Може бути вказано /AC – у відсортований файл відбираються записи які задовільняють умові і поля із вказаног списку. Якщо є слова Ascending : Discending, то типи сортування (по зростанню чи спаданню) відноситься до всіх полів для яких не були вказані типи /A, /D.
Приклад: SORT TO a ON pr/a – сортування поля pr активної бази даних по зростанню, і запис відсортованої бази даних в базу даних з іменем а.dbf.
SORT TO b ON im/D – сортування іm активної бази даних по спаданню.
SORT TO с ON sb/a – сортування sb активної бази даних по зростанню.
Index On <вираз> To <IDX-файл>/Tag<ім’я тега> [Of<CDX-файл>] [For<умова>] [Compact] [Discending] [Unique] [Additive] – використовується для створення індексного файлу для текучої бази даних.
Індексний файл складається з списку номерів записів у тому порядку в якому база даних була б відсортована. Фізичний порядок записів в базі даних не змінюється.
У FoxPro можна створити два типи індексних файлів:
1 Звичайний – з розширенням .IDX і мають один індексний ключ.
Мультиіндексний – файли з розширенням .CDX.
Мультиіндексні файли є двох типів : структурний з іменем яке співпадає зіменем бази даних, і файлу з довільним іменем.
Струтурний завжди відкривається з файлом даних і його не можна закрити, але можна зробити не основним.
Discending – якщо не вказано, то індексування відбувається по зростанню;
Unique – якщо в полі по якому відбувається індексування є однакові значення то буде лише один запис;
Additive – створений індексний файл не закриває відкритих до цього індексних файлів. По замовчуванню всі індексні файли відкриті раніше закриваються.
Індексний вираз включає в себе поле текучої бази даних, значення його може бути числовим, символьним або логічним.
Поле memo не може включатися в індексний вираз. Довжина індексного виразу для IDX-файлу має 100 символів, а CDX-файл – 254 символи.
Перебудова активних індексів.
Перебудову можна здійснити двома способами : відкриття всіх індексних файлів перед внесенням зміни в базу даних, або командою Reindex, яка дає можливість модифікувати індекси після внесення всіх змін в базу даних.
Відкриття індексних файлів.
Відкриття індексних файлів можна здійснити двома способами: по команді Use і по команді Set index to [<список індексних файлів> : ?]
Зміна порядку доступу до індекса:
Set order to <вир. N>.
<вир. N> - вказує номер індекса з списку відкритих індексних файлів
Відкриття індексних файлів і зміна порядку доступу до індекса у FoxPro 2.0
Відкриття індексних файлів здійснюється по команді:
Use[<ім’я dbf-файла>] : ? [In<робоча область>][again] [Index<список індексних файлів>]: ? [Order [<вир. N> : <IDX-файл>:[Tag<ім’я тега>] [Of<CDX-файл>][Ascending : Discending]]] [Alias <псевдонім>] [Noopdate].
Order <вир. N> - вказує номер головного інндекса серед перерахованих в списку IDX- файлів або серед тегів, якщо нас не влаштовує відкриття індекса по замовчуванню.
Order : Order 0 – означає що хоч індексні файли відкриваються але не назначається головного індекса.
Order<ім’я файла> - назначає головним той індексний файл ім’я якого вказано. Якщо Order відсутнє, то головним буде перший із списку індексних файлів, а всі інші файли зі списку будуть відкриті.
Якщо відкриваються теги структурних чи мультиіндексних файлів, то слово Of пишуть тоді ім’я CDX- файла не співпадає з іменем бази даних.
Askending: diskending – вказується тоді коли нас не влаштовує порядок сортування в індексному файлі.
Again – дозволяє відкрити відкритій уже файл даних в іншій робочій області. В тій робочій області де він був відкритий раніше.
Якщо база даних вже відкрита то відкрити індексні файли можна по команді: set index to [<список індексних файлів>[ order[<вираз N>: <idx-файл>:[ tag <ім’я тега>] [ of <cdx-файл> ] [ askending : dskending ] ] ] ]. По цій команді відкривається індексний файл із списку, якщо відсутний order то дія цієї опції така ж як в команді USE.
Якщо боаза даних і індексні файли відкриті то змінити прядок доступу до індекса можна по команді: set order to [ < вираз n > : < idx-файл>:[ tag <ім’я тега>] [ of <cdx-файл> ] [ askending : dskending ] ] ] ][additive].
Копіювання індексних файлів
Індексні файли можна скопіювати в тиги по команді : copy індекс-es < idx-файл> : all to < cdx-файл>. По цій команді копіюються всі файли які є відкриті в структурних або мультиіндексних файлах. Якщо cdx-файла не має то він створюється, іменем IDX-файлів стають іменами тегів.
Copy Tag<ім’я тега>[Of<cdx-файл>]To<idx-файл> - команда копіює тег структурного або мультиіндексного cdx-файла, якщо файл структурний, то of не вказується.
Delete Tag <тег 1>[of<cdx-файл 1>][,<тег 2>[of<cdx-файл 2>]] – знищує теги відповідних cdx-файлів.
Тут можуть бути перераховані теги: формула або різні теги різних файлів, інакший варіант команди – Delete All[of <cdx-файл>] – всі теги знищити.
Формування звітів.
Створення звітних форм.
Create Report [<ім’я файлу>: ?] [Window <ім’я вікна 1>] [In<ім’я вікна 2>: in screen] – ця команда відкриває вікно побудови звіту. Ім’я файлу можна задати. Система присвоїть розширення .frx. Опція Window<імя вікна> означає, що побудова звіту візьме всі характеристики із раніше створеного вікна, яке не