Открытие таблицы
Открытие таблицы производят посредством команды:
> <База_данных> - указывается имя базы данных, в которой находится открываемая таблица. Если таблица находится в текущей базе данных илииспользуется сама по себе, без указания принадлежности к базе данных,то этот параметр команды не указывается;
> <Имя_таблицы> - имя открываемой таблицы;
> <Представление_50Е> - открывает представление, хранящееся в текущейбазе данных;
> ? - открывает стандартное диалоговое окно для выбора файла таблицы;
> IN <Комер_рабочей_области> | <Алиас_таблицы> - указывается рабочаяобласть (или алиас), в которой требуется открыть таблицу;
> ONLINE - открывает offline-представление, сохраненное предварительнос помощью команды CREATEOFFLINE ();
> ADMIN - открывает offline-представление, сохраненное предварительно спомощью команды CREATEOFFLINE (), не обновляя измененные в представлении данные на сервере;
> AGAIN - позволяет повторно открыть в другой рабочей области уже открытую на данный момент таблицу;
> NOREQUERY - определяет, что открываемое SQL-представление не обновляется из БД в момент открытия;
> NODATA - загружает структуру SQL-представления;
> INDEX <Список_индексных_файлов> I ? - задает индексные файлы, используемые для упорядочивания записей в таблице. Подробнее индексырассмотрим позже. Если указать ?, откроется стандартное диалоговоеокно для выбора индексного файла;
> ALIAS <Алиас_таблицы> - указывает алиас (псевдоним) для открываемойтаблицы;
> EXCLUSIVE - открывает таблицу в эксклюзивном режиме. Такой режимзапрещает другим пользователям, открывшим эту же таблицу, вноситьизменения. Этот режим требуется для выполнения определенных операций над таблицами;
> SHARED - позволяет открывать таблиц)' при совместном использованиинесколькими пользователями даже в случае, когда она уже открыта однимиз пользователей в эксклюзивном режиме;
> NOUPDATE - запрещает изменение таблицы.
> CONNSTRING <Строка_соединения> I <Указатель> - задает строку соединения для базы данных, к которой происходит подключение через драйверы ODBC. Если указать вместо строки соединения пустые кавычки (""),откроется стандартное диалоговое окно ODBC Data Source.
Использование USE без параметров закрывает таблицу в текущей рабочейобласти.
Примеры:
Первая из приведенных команд просто открывает таблицу Persons. Втораякоманда открывает таблицу Persons и задает доя нее алиас Prs. Дальнейшее обращение к этой таблице может происходить не по имени, а по алиасу Prs. Например, желая узнать, в какой рабочей области открыта эта таблица, можно использовать функцию SELECT ("Prs"). Третья команда открывает таблицу Persons впервой незанятой рабочей области. Она равносильна сочетанию команд:
Если таблица свободная (Free), то есть она не входит в базу данных, а располагается на диске в виде файла, можно сразу открывать ее с помощью командыUSE.
Если же таблица входит в базу данных, требуется сначала открыть базу данных. Это можно сделать, используя команду OPEN DATABASE.
> EXCLUSIVE - открывает базу данных в эксклюзивном режиме;
> SHARED - открывает базу данных в режиме совместного использования;
> NOUPDATE - открывает базу данных и запрещает ее редактирование;
> VALIDATE - открывает базу данных и производит проверку наличия входящих в состав базы данных файлов на диске.
Эта команда открывает базу данных MyVFPbase в эксклюзивном режиме.После открытия базы данных входящие в ее состав таблицы можно открыватьобычным образом при помощи команды USE.
Для редактирования открытой базы данных используется команда MODIFYDATABASE. При этом откроется окно Дизайнера базы даннык (Database Designer).
Закрыть открытую базу данных можно при помощи команды CLOSE DATABASE.
Если открыто одновременно несколько баз данных или и база данных и свободные таблицы, имеет смысл обращаться к таблицам, входящим в состав базыданных с использованием префикса, Префикс в данном случае состоит из имени базы данных, в которой находится таблица. Имя базы данных в префиксеотделяется от имени таблицы восклицательным знаком. Например:
Команда, приведенная выше, открывает таблицу alvt, находящуюся в базеданных MyWPbase.
Общая информация о таблице
Visual FoxPro при работе с таблицами поддерживает систему курсоров. Курсоруказывает для каждой таблицы, какая запись является текущей. При работе скомандой BROWSE та запись, поле которой выделено (обычно рамочкой вокругполя), и является текущей. Узнать номер текущей записи можно, если воспользоваться функцией RECNO ().
Если не указать параметры, будет возвращена информация по таблице, открытой в текущей рабочей области.
Попробуйте набрать в окне Command
Если в текущей рабочей области есть открытая таблица, на экране появится номер текущей записи (номер появится в левой части рабочего поля основного окна Visual FoxPro, и вы можете не увидеть его, если он закрыт ка-кими-либо окнами). Результаты работы подобных функций в интерактивномрежиме удобнее смотреть, если они выведены в окно сообщений. Сделатьэто можно с помощью команды MESSAGEBOX. В качестве параметра в скобкахуказывается функция, которая должна возвращать интересующее нас значение. Например, чтобы увидеть номер текущей записи следует набрать в окнеCommand
В результате появится диалоговое окно с номером текущей записи и кнопкой ОК. При щелчке мышью по кнопке ОК окно закроется.
Еще одна полезная функция для получения информации о записях таблицы -RECCOUNT (). Она возвращает число записей в таблице.
Если не указать параметры функции, она возвращает число записей в таблице, открытой в текущей рабочей области.