НОУ ІНТУІТ, лекція, СУБД Microsoft Visual FoxPro

Використання стандартних режимів BROWSE та EDIT для роботи з таблицями бази

У системі VFP існує два основних режими роботи з таблицями (і, відповідно, команди мови цієї системи):Browse- табличний формат іEdit- форма з рядковим розташуванням полів.

Існує багато різних способів відкрити вікно таблиці бази даних для редагування в одному з цих режимів, зокрема:

  1. у відкритому вікні модифікації структури бази (Database Designer) клацнути правою кнопкою миші на таблиці та вибрати командуBrowse;
  2. клацнути мишкою на значкуOpenстандартної панелі інструментів, задати тип файлуTable, вибрати потрібну таблицю і дати командуBrowseу вікніCommandабо в пункті менюView;
  3. відкрити вікноData session(з пункту головного менюWindow), у ньому відкрити потрібні таблиці (кнопкаOpen), потім вибрати потрібну Вам відкриту таблицю та натиснути кнопкуBrowse;
  4. створити проект, додати до нього базу даних (зовнішня) і у вікні проекту вибрати для потрібної таблиці командуBrowse(корисно відразу створити проект, тоді не потрібно буде шукати файли системи, що розробляється на диску, всі файли можна створювати у вікні проекту із зазначенням, де вони будуть розміщуватись на диску);
  5. написати у вікніCommandкомандуUSE?, вибрати таблицю та написати командуBROWSE.

Після варіантів 1-4 у вікні Command ми побачимо 2 або 3 команди (друга може бути відсутня), наприклад, для табл. 4.4, наступні:

USE c:\asg\students\fclt.dbf IN 0 EXCLUSIVE - відкрити таблицю в першій вільній робочій зоні з аліасом (псевдонімом) FCLT ексклюзивно;

SELECTFCLT – вибрати робочу зону з аліасом FCLT;

BROWSE LAST - показати на екрані таблицю в тій самій конфігурації, як раніше (якщо в структурі таблиці додані нові поля або раніше було встановлено показ не всіх полів, а потрібно показати все, слід написати команду BROWSE NORMAL).

В результаті буде відкрито вікно таблиці бази даних (рис. 4.12), зміниться пункт головного менюView(Вид) - у ньому з'являться пунктиBrowseтаEditдля перемикання режимів, крім того, пунктAppend mode- режим автоматичного додавання записів до таблиці (можливий тільки при роботі з таблицями із системи VFP, у програмному режимі для додавання записів служать командиAPPEND: таINSERT:).

субд

Вибравши режимиBrowseтаAppend mode(в меню цих пунктів з'явиться галочка), ми зможемо занести нові записи в таблиці нашої бази.

ВікноBrowseмає багато можливостей, які використовуються при програмуванні (див. повний синтаксис командиBrowseу додатку). Поля таблиць на екрані можна міняти місцями, змінювати їх ширину та ін. У діалоговому режимі VFP за замовчуванням виконується командаBrowse Last- відкрити вікно у тій конфігурації, де воно було відкрито в попередній раз. Якщо ви при модифікації структури таблиці додали до неї нове поле, воно може не з'явитися на екрані. У цьому випадку потрібно написати у вікніCommandкомандуBrowseабоBrowse normal.

ВікноBrowseможна поділити на 2 частини. Одна з них може бути в режиміBrowse, інша -Edit, що зручно під час роботи з таблицями, що мають велику кількість полів. Можна змінювати розташування та ширину полів.

Призначення тонкої білої колонки зліва від полів таблиці - позначити запис для видалення. Поміченазапис може бути видно з чорною відміткою в цій колонці (set delete off) або не видно і як би відсутня (set delete on). Позначені записи можна видалити з файлу таблиці (командоюPack), але ця операція пов'язана з переписуванням інформації з одного файлу до іншого, може виконуватися тільки в ексклюзивному режимі відкриття таблиці, тому виконується нечасто і зазвичай не простим користувачем, а адміністратором бази чи програмістом.

РежимEditдля тієї ж таблиці показано на рис. 4.13.

У таблиці 3-й запис позначено видалення. Позначку легко зняти, повторно клацнувши по чорній смужці ліворуч від запису. Вона помітна, якщо параметр системи SET DELETED має значення OFF .

інтуіт

microsoft

Можливий показ таблиці з поділом на 2 частини, одна з яких буде в режимі Browse, інша - в режимі Edit (рис. 4.14).

Режим збереження доданих, змінених та віддалених даних залежить від того, чи використовується буферизація даних. Змінити режим можна у властивостях робочої зони (Properties для вибраної таблиці в меню або у вікні Data Session), вікно опису властивостей показано на рис. 4.15

лекція

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

У режимі буферизації зміни заносяться до таблиці тільки в тому випадку, якщо перед її закриттям дана команда=TABLEUPDATE(.T.).

Буферизація буває оптимістична (Lock records when written) і песимістична (Lock records when edited), лише на рівні одного запису (Buffer current record ) чи багатьох (Buffer all edited records).

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

Докладніші відомості про розраховану на багато користувачів роботу та використання режимів буферизації можна знайти в довідковій системі VFP .

Особливість VFP при показі в стандартних режимах двох таблиць, між якими встановлений зв'язок: у дочірній таблиці система показує лише записи, зовнішній ключ яких відповідає значенням первинного ключа головної таблиці (див. рис. 4.16).

visual

Для інформаційної системи, що розробляється, слід занести в стандартному режимі роботи з таблицями інформацію в довідники - таблиці табл. 4.4 табл. 4.5 та табл. 4.7. Список студентів та список їх оцінок краще заповнювати за допомогою екранної форми, яка буде створена далі.