Авторизация



Команды манипулирования данными в таблицах БД

Оценить
(0 голоса)
При выполнении команды указатель перемещается на соответствующее значению числового выражения количество записей вперед или назад (если это значение положительное или отрицательное соответственно). Если числовое выражение отсутствует при записи команды, то осуществляется перемещение указателя на одну запись вперед. Если при этом используется индексирование, то команда SKIP выполняется в соответствии с последовательностью, указанной в индексной таблице. Если перед выполнением команды SKIP—1 указатель текущей записи в таблице БД указывает на последнюю запись, то функция EOFQ принимает значение Истина (.Т.), если же указатель фиксирует первую запись и используется команда SKIP —1, то BOF() принимает значение Истина. Задания 1. Как можно записать команды, аналогичные GO…
Оценить
(0 голоса)
Другим способом изменения положения указателя записи в текущей таблице БД является поиск записи, удовлетворяющей заданным условиям. Для этого может быть использована целая группа команд, основные из которых — команды LOCATE и CONTINUE, имеющие следующий формат: LOCATE (диапазон) FOR (выражение) WHILE (выражение) CONTINUE (Здесь вместо многоточия могут находиться различные команды dBASE III PLUS). Команда LOCATE производит поиск в заданном диапазоне текущей таблицы БД первой записи, для которой истинны выражения в угловых скобках как ключевых слов FOR, так и WHILE. После того, как первая такая запись найдена, могут выполняться различные команды до тех пор, пока среди них не появляется команда CONTINUE, указывающая,…
Оценить
(0 голоса)
Если удовлетворяющая условию запись найдена, то указатель устанавливается на нее и «специальная» функция FOUND0 принимает значение ИСТИНА (.Т.). Если же такая запись не найдена, то указатель устанавливается либо на конец таблицы (EOF() = .Т.), либо на конец диапазона, если он был задан, При этом функция FOUND() принимает значение .F. Следующие команды поиска записи (FIND и SEEK) могут выполняться только при использовании индексирования. В отличие от команды LOCATE, которая использует последовательный перебор записей, команды FIND и SEEK проверяют не каждую запись, а используют индексный механизм поиска. Одним из таких методов, позволяющим сократить количество проверяемых записей, является метод половинного деления (иногда его…
Оценить
(0 голоса)
FIND (символьная строка) / (число) Команда SEEK похожа на команду FIND, но позволяет использовать в качестве условия (ключа) поиска любое выражение (символьное или числовое). Формат команды SEEK: SEEK (выражение) Команды FIND и SEEK могут осуществлять поиск только по первым символам условия (ключа) поиска. Например, запись FIND Иван , в таблице КУРАТОРЫ, индексированной по полю ФАМИЛИЯ, найдет первую запись, содержащую фамилию, начинающуюся на ИВАН (например, Иванов). При отсутствии записи, удовлетворяющей ключевому условию в командах FIND или SEEK, функция FOUNDQ принимает значение ЛОЖЬ (.F.), а функция EOFQ — значение ИСТИНА (.Т.). Указатель текущей записи устанавливается в этом случае за последней записью. Если…
Оценить
(0 голоса)
Для изменения значений полей записей таблицы БД и добавления новых записей в языке dBASE III PLUS имеется несколько команд, позволяющих осуществлять эти функции. К их числу относятся команды APPEND, EDIT. CHANGE, INSERT, BROWSE и REPLACE. Команда APPEND имеет два типа формата: APPEND BLANK и APPEND FROM (имя таблицы) FOR (выражение) В первом случае команда APPEND добавляет в конец текущей таблицы БД новую запись. Если слово BLANK указано, то добавляется запись с «пустыми» значениями полей (т. е. освобождается место для последующей записи). Эта пустая запись может быть впоследствии модифицирована с помощью других команд редактирования или ввода. Если же ключевое слово BLANK…
Оценить
(0 голоса)
В отличие от команды APPEND команда INSERT добавляет запись не только в конец таблицы, а в любое место, определяемое значением указателя. Формат команды: INSERT BEFORE BLANK При такой записи команды в таблицу БД добавляется запись перед текущей записью (фиксированной указателем) с пустыми значениями полей. Если слово BEFORE, отсутствует, то новая запись добавляется после текущей. Если же в записи команды отсутствует слово BLANK, то осуществляется переход в режим экранного редактирования, при котором можно работать только с одной вводимой записью (в отличие от других команд редактирования, при которых возможен и доступ к соседним записям). Если используется индексирование, то действие команды INSERT становится…
Оценить
(0 голоса)
Все описанные выше команды редактирования таблиц БД, как уже отмечалось, могут использоваться в режиме экранного редактирования. Это означает, что пользователь может модифицировать поля записи непосредственно на экране, используя для работы специальные управляющие (функциональные) клавиши или их комбинации. Если перед выполнением одной из описанных выше команд редактирования была дана команда SET FORMAT ТО (имя формата экрана), то поля модифицируемой (вводимой) записи будут размещены на экране в соответствии с указанным пользователем форматом. Физическим эквивалентом формата экрана является файл на диске, содержащий фрагмент программы на языке dBASE III PLUS и имеющий расширение FMT. Если же эта команда не была дана, то команды редактирования…
Оценить
(0 голоса)
BROWSE является одной из наиболее удобных команд языка dBASE III PLUS. Она позволяет добавлять и редактировать записи в текущей таблице БД. Эта команда рассчитана на непосредственный диалог пользователя с ЭВМ: при работе с BROWSE экран дисплея оказывается как бы окном в текущую таблицу БД. Команда BROWSE позволяет: одновременно обрабатывать до 17 записей, которые выводятся на экран по вертикали; по горизонтали выводится при этом столько полей, сколько помещается на экране. Существует возможность перемещения вверх или вниз от одной записи к другой или по горизонтали от поля к полю, влево и вправо, по всей таблице БД для просмотра, редактирования или удаления записей.…
Оценить
(0 голоса)
Ключевое слово NOMENU можно задать для запрещения использования собственного меню команды BROWSE в процессе редактирования. Параметр NOAPPEND не позволяет пользователю вводить в таблицу дополнительные ваписи. И, наконец, ключевое слово WIDTH используется для ограничения количества символов, которые выводятся на экран для любого поля. Содержимое поля может перемещаться в заданных пределах по горизонтали с помощью специальных клавиш. Команда BROWSE имеет собственное меню, с помощью которого можно управлять процессом редактирования. Меню содержит семь режимов; ТОР — перемещение указателя к первой записи таблицы: RECORD — перемещение к записи с указанным номером; BOTTOM — перемещение к последней записи таблицы; FIND — при использовании индексирования поиск…
Оценить
(0 голоса)
В процессе обработки данных часто возникает необходимость модифицировать значение полей в одной или нескольких записях таблицы на основе информации, находящейся в переменных памяти либо в других полях текущей или любой другой таблицы БД. Для этого используются команды REPLACE и UPDATE. Формат команды REPLACE: REPLACE (диапазон) (имя поля) WITH (выражение) (имя поля 2) WITH (выражение), . FOR (выражение) WITH (выражение). Команда выполняет замену данных в полях 1,2, и т. д, на данные, приведенные в соответствующих выражениях (которые указаны в угловых скобках после ключевого слова WITH). При необходимости может быть также указан параметр диапазона (по умолчанию диапазоном является одна текущая запись). Если…