Методические рекомендации и задания для лабораторных работ по дисциплине «Вычислительные системы». Методические рекомендации и задания для лабораторных работ по ди. Методические рекомендации и задания для лабораторных работ по дисциплине Вычислительные системы
Скачать 150.5 Kb.
|
LIST FOR (STEL=112).AND.(VOZVR выдаются книги, расположенные на стеллаже 112 с просроченным возвратом. Здесь использованы числовое поле стеллажа и поле даты. При использовании логических операций с полями даты необходимо предварительно определить переменную типа даты следующим образом D=CTOD('03.11.96') и затем уже работать с этой переменной. LIST AVT FOR (GOD>1990).OR.(NAL=’ЕСТЬ’)Здесь использовано символьное поле, оно заключается в кавычки. Логические условия заключаются в точки. Символьная запись в кавычках должна быть задана точно теми же символами, которыми эта запись задана в базе. (ПК сравнивает коды символов, поэтому русские и латинские буквы одного написания для ПК разные символы, аналогично различаются строчные и прописные буквы. LIST FOR POLZOV='Орлов' выдаются книги, выданные Орлову. LIST AVT,NAZV FOR NAL='ЕСТЬ' выводятся поля авторов и названий для книг, имеющихся в наличии. Последовательный поиск записи по условию осуществляется командой LOCATE. LOCATE FOR STEL=114 выдается номер одной первой найденной записи. Просмотр найденной записи осуществляется командой DISPLAY. Следует обратить внимание, что действие команды начинается с перемещения указателя записи на первую запись и в процессе поиска указатель записи перемещается по базе данных. После нахождения заданной записи указатель оказывается на этой записи. Таким образом, команда работает с указателем записи самостоятельно и, задавая после нее другую какую-нибудь команду, нужно это учитывать. В частности, задавая для продолжения поиска команду CONTINUE, нужно понимать, что поиск продолжается с сохранением заданных условий от той записи, на которой остановился поиск. Если заданные условия не найдены, то указатель записи оказывается в конце базы и команда DISPLAY информации не дает. Если в процессе поиска необходимо сменить условия, то, чтобы не начинать поиск с начала базы, если это не нужно, а база большая, следует использовать команду LOCATE REST FOR STEL=115 - поиск будет продолжен от текущей записи с новыми условиями. Поиск может осуществляться и по сочетанию нескольких условий: LOCATE FOR STEL=114 .AND. NAL=’ЕСТЬ’, опять выдается только номер первой записи, удоалетворяющей этому условию. Если мы не располагаем точной информацией о поисковом признаке, т.е. не уверены абсолютно точно как записаны данные, то можно организовать приближенный поиск: LIST AVT FOR LIKE ('Ka*',AVT) - будут выданы все фамилии авторов, начинающиеся на Ка. При этом, конечно, будет выдана и лишняя информация, но зато и нужная, которую при точном поиске обнаружить бы не удалось. В опции LIKE символы * и ? могут употребляться в любых сочетаниях. Может использоваться также команда типа BROWSE FIELD AVT FOR LIKE (‘Ka*’,AVT) Корректировка данных. Для изменения, дополнения или удаления записей используется режим APPEND. После этой команды система переходит в режим редактирования записей, при этом автоматически в конец базы добавляется пустая запись, на которую и устанавливается указатель записей. В эту пустую запись можно вводить новую дополнительную информацию. Для перехода к предыдущим записям - PgUp. Перейдя к нужной записи можно ее отредактировать обычным образом. Для удаления записи ее нужно предварительно пометить. Пометка к удалению - команда CTRL+T. У помеченной записи слева появляются метки в виде точек, однако запись при этом не удаляется. Восстановление помеченной к удалению записи (отмена удаления) осуществляется повторной командой CTRL+T. Удаление отмеченных записей производится командой PACK после выхода из режима редактирования. Выход из режима APPEND командой CTRL+END. Пометить запись для удаления можно и не входя в режим APPEND командой DELETE RECORD 3 - третья запись оказывается помеченной или просто DELETE, помечена текущая запись. Завершение удаления командой PACK. Снятие пометок к удалению - команда RECALL, без параметров действует только на текущую запись. Пример. RECALL ALL -снятие всех пометок. USE BD1GO 5 переход к пятой записи SKIP-3 возврат ко второй записи DELETE NEXT 3 пометка к удалению 2,3,4 записей RECALL RECORD 4 снятие пометки с записи 4 PACK удаление записей с возвратом указателя записей на первую запись. В больших базах команда PACK работает медленно, поэтому используется редко. Чтобы помеченные записи не мешались, их делают невидимыми командой SET DELETED ON, в этом случае запись будет появляться только при прямом обращении к ней (GO 20) -тогда эта помеченная запись проявится. Задав последовательность команд USE BD1 APPEND FROM BDD1 мы к открытой базе BD1 добавим содержимое другой базы BDD1, конечно при этом все базы должны существовать и поля у них должны быть одинаковыми. Не в режиме редактирования, а в командном, можно вставить новую запись между уже имеющимися. Для этого указатель записи устанавливается на нужную запись и она становится текущей. Для вставки после текущей записи используется команда INSERT BLANK, для вставки перед текущей записью - команда INSERT BEFORE BLANK. |