Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Создание временных переменных.




 

Следующие команды создают временные переменные и присваивают им значения.

1) <переменная> = <выражение>

2) STORE <выражение> TO <переменная>

Например:

А = 4

А = «база»

STORE 4 TO A

STORE 0 TO A1, A2, A3.

Сохранение временных переменных.

SAVE TO <файл> [ALL LIKE/EXCEPT <маска>]

сохраняет в файле с указанным именем, все или часть из имеющихся временных переменных. Файл временных переменных имеет расширение .MEM

 

Опция: ALL LIKE <маска> -позволяет сохранить только те переменные, которые соответствуют маске.

Опция: ALL EXCEPT <маска> -сохраняет все, кроме соответствующих маске.

Маска может содержать символы *,?

Например:

А1 = 2;

А2 = «база»

А3 =.Т.

В1 = «Привет»

В2 = -17

F =.F.

SAVE TO PRIMER.MEM && все переменные сохранить.

SAVE TO PRIMER1 ALL LIKE A* && сохранить все на А (А1, А2, А3).

SAVE TO PRIMER2 ALL EXCEPT F && сохранить все, кроме F.

SAVE TO PRIMER3 ALL LIKE?1 && сохранить А1 и В1.

 

Если файл в котором нужно сохранить переменные уже существует, то выводится стандартное сообщение. Такое предупреждение в программе можно подавить командой:

 

SET SAFETY OFF

Загрузка переменных в память.

Если нужно проработать с ранее сохранёнными переменными, то их нужно загрузить из файла в оперативную память командой:

RESTORE FROM <файл> [ADDITIVE]

- команда загружает все переменные из файла <файл>.

Если ADDITIVE указана, то переменные из файла добавляются к переменным, находящимся в памяти, иначе все имеющиеся до этого переменные из памяти удаляются.

Например:

RESTORE FROM PR2.MEM

Расширение не обязательно.

Удаление переменных.

RELEASE <список переменных>

RELEASE ALL [LIKE/EXCEPT <маска>]

RELEASE ALL

- Одинаковые команды

CLEAR MEMORY

Например:

RELEASE A1, B1

RELEASE ALL LIKE A*

 

Просмотр переменных.

1 способ:

DISPLAY MEMORY [LIKE <маска>]

выводит переменные, их тип и значения.

Например:

DISPLAY MEMORY – выводит все переменные.

DISPLAY MEMORY LIKE * -выводит все пользовательские переменные.

 

2 способ:

А = 4

В = «база»

? А, В – на экране 4 база.

? «А =», А – на экране А = 4.

 

Выполнить Практическое задание № 4. (см. Приложение)

 


Функции СУБД FoxPro.

Формат записи функции Действие Пример
Арифметические
INT (<выр. N>) Ближайшее целое меньшее или равное <выр. N>. ?INT (-18.7) && -18
MAX (<выр.>, < выр. 1>[, < выр. 2> …]) Возвращает максимальное значение из списка аргументов, которые должны быть одного типа. ?MAX (3,1,-7) && 3
MIN (<выр.>, < выр. 1> [, < выр. 2> …]) Возвращает минимальное значение из списка аргументов, которые должны быть одного типа. ?MIN (3,1,-7) && -8
ROUND (<выр. N1>, <выр. N2>) Округляет <выр. N1> до заданного в <выр. N2> количества знаков после запятой. ?ROUND (- 34.268,1) && 34.2
RAND ([<выр. N>]) Возвращает число в диапазоне от нуля до единицы. <выр. N> позволяет определить начальное значение аргумента функции. Если число отрицательное, то значение функции определяется с помощью таймера компьютера.  
EXP (<выр. N>) Экспонента <выр. N> основание натурального логарифма е в степени <выр. N>.  
LOG (<выр. N>) Натуральный логарифм <выр. N>, аргумент должен быть больше нуля.  
LOG 10 (<выр. N>) Десятичный логарифм <выр. N>, аргумент должен быть положительным.  
SQRT (<выр. N>) Квадратный корень <выр. N>. Аргумент должен быть положительным.  
Системные установки
SET FIXED ON/OFF Если установлено, то число десятичных разрядов, выдаваемых после запятой, определяется разрядностью операндов. Если OFF командой следующей ниже.  
SET DECIMALS TO <выр. N> Устанавливает количество отображаемых десятичных разрядов равных <выр. N>, и при этом производить округление. По умолчанию <выр. N> = 2. эти команды не влияют на фактические значения.  
Строковые
AT/ATC (<выр. C1>, <выр. C2> [, <выр. N>]) Поиск слева направо в строке<выр. С2> номера позиции, с которой начинается подстрока <выр. С1>. Если подстрока не найдена, выдаётся ноль. параметр <выр. N> указывает, какой экземпляр <выр. С1> разыскивается в <выр. С2>. По умолчанию <выр.N>=1. ?AT (‘база’,’база данных’) && 1 ?AT (‘а’,’база данных’) && 2
LEN (<выр. C>) Число символов в <выр. С>. Длина нулевой строки (‘’) ноль. ?LEN (‘база’) && 4
LEFT (<выр. C>, <выр. N>) Выделение из строки <выр. С> указанного количества символов слева. Если <выр. N> длиннее строки, то возвращается вся строка. ?LEFT (4,’база данных’) && база
RIGH (<выр. C>, <выр. N>) Выделение из строки <выр. С> указанного количества символов справа. Если <выр. N> длиннее строки, то возвращается вся строка. ?RIGHT (‘база данных’,6) && данных
SUBSTR (<выр. C>, <начальная позиция>, [<число символов>]) Выделение из <выр. C> подстроки начиная с <начальная позиция> длиной в <число символов>. Если последний параметр отсутствует, выделяемая подстрока заканчивается концом строки <выр. C>. ?SUBSTR (‘база исходных данных,6,8’) && исходных
LTRIM (<выр. С>) Удаление ведущих пробелов в <выр. C>. ?LTRIM (‘ база ’) && ‘база ’
TRIM (<выр. С>) Удаление завершающих пробелов в <выр. C>. ?TRIM (‘ база ’) && ‘ база’
REPLICATE (<выр. С>, <выр. N>) <выр. C> повторяется <выр. N> раз. ?REPLCATE (‘+–’,5) && +–+–+–+–+–
SPACE (<выр. N>) Формирование строки пробелов длиной <выр. N>  
STUFF (<выр. С>, <начальная позиция>, <число символов>, <выр. С2>) Изменение любой части <выр. С1> на <выр. С2> с места, указанного <начальная позиция> длиной в заданное <число символов>. Если <число символов > равно нулю, то <выр. С2> вставляется в <выр. С1>, не изменяя не одного символа в исходной строке. Если <выр. С2> является пустой строкой длиной ноль, то есть <выр. С2> = ‘’, из исходной удаляется указанное <число символов> со сжатием <выр. С1>. X = ‘база исходных данных’ ?STUFF (X,6,9,’конечных’) && база конечных данных ?STUFF (X,6,9,’’) && база данных
Функции работы с датами
CDOW (<выр. D>) Возвращает имя дня недели SET DATE GERMANпо-английски. ?CDOW ({05.10.91}) && Saturday
CMONTH (<выр. D>) Предъявляет название месяца по-английски. ?CMONTH ({05.10.91}) && October
CTOD (<выр. C>) Преобразует дату из символьной формы в формат даты. ?CTOD (’05.10.91’) && 05.10.91
{< выр. C>} Функция преобразования строковой константы (без кавычек) в дату. Аналогично CTOD (), но более удобно, однако в качестве допускаются переменные и функции. {05.10.91} && 05.10.91
DATE () Предъявляет системную дату. Формат предъявления зависит от SET CENTURY и SET DATE.  
DAY (<выр. D>) Число дня по выражению типа дата <выр. D>. ?DAY ({05.10.91}) && 05 October 91
DMY (<выр. D>) Возвращает по-английски в виде строки выражение даты. Если SET CENTURY OFF – формат ДД месяц ГГ. SET CENTURY ON – формат ДД месяц ГГГГ.  
DOW (<выр. D>) Определяет номер дня недели по <выр. D>. Первый день недели – воскресенье, седьмой – суббота. ?DOW ({05.10.91}) && 7
DTOC (<выр. D> [, 1]) Преобразует типа дата в символьное выражение. Один означает, что формат ГГГГММДД. ?DTOC ({05.10.91}) && 05.10.91 ?DTOC ({05.10.91},1) && 19911005
DTOS (<выр. D>) Аналогично DTOC () с параметром «1».  
GOMONTH (<выр. D>, <выр. N>) Возвращает дату, которая отстоит от <выр. D> на <выр. N> месяцев. Если <выр. N> положительно, возвращаемая дата будет на <выр. N> месяцев позже, если отрицательно – раньше. Если такой даты не существует, то возвращается дата, соответствующая последнему дню вычисленного месяца. ?GOMONTH ({31.10. 91},12) && 31.10.92 ?GOMONTH ({31.10.91},-6) && 31.04.91
MONTH (<выр. D>) Определяет числовое значение номера месяца по дате <выр. D>. ?MONTH ({05.10.91}) && 10
YEAR (<выр. D>) Определяет числовое значение года по <выр. D>. ?YEAR ({05.10.91}) && 1991
Функции преобразования данных
ASC (<выр. C>) Выдаёт ASCII – код первого символа из <выр. С>. ?ASC (‘B’) && 66
CHR (<выр. N>) Преобразует значение <выр. N> (1<N<255) в соответствующий символ. Обратно ASC. ?CHR (66) && B
CTOD (<выр. C>) Преобразует дату из символьной формы в формат даты.  
DTOC (<выр. D>) Преобразует типа дата в символьное выражение. Один означает, что формат ГГГГММДД.  
STR (<выр. N>, [<длина>], [<десятичные знаки>]) Преобразует <выр. N> в символьную строку, включающую знак «-» (если есть) и десятичную точку, общей длиной <длина> с заданным количеством <десятичных знаков>. ?STR (384.248,8,2) && 384.25
VAL (<выр. С>) Преобразует число, представленное в символьной форме <выр. С>, в числовую форму. Число разрядов устанавливается SET DECIMALS TO, по умолчанию = 2, остальное округляется. ?VAL (‘-16.576’) && -16.580
Функции проверки файлов и дисков
BOF ([<область>]) Достигнуто (BOF () =.T.) или нет (.F.), начало файла БД в текущей или в указанной области.  
DBF ([<область>]) Выдаёт прописными буквами полное (с указанием пути) имя открытой БД в текущей или указанной рабочей области.  
DISKSPACE () Число свободных байт на текущем диске.  
DELETED ([<область> ]) Выдаёт.T., если текущая запись помечена на удаление,.F. в противном случае. LIST FOR DELETED – покажет записи помеченные на удаление.  
EOF ([<область>]) Достигнут (.Т.) или нет (.F.) конец файла БД.  
FILE (<имя файла>) Проверка наличия файла на диске любого типа, имя с расширением пишутся в апострофах.  
FIELD (<выр. N1> [, <область>]) Выдача имени поля из активной БД с указанным в <выр. N> номером поля БД по порядку. Если полей меньше, чем <выр. N> выводится ноль.  
FOUND ([<область>]) (.Т.), если команды (LOCATE, CONTINUE или SEEK) завершилось успешно.  
FCOUNT ([<область>]) Число полей в открытой БД.  
FILTER ([<область>]) Возвращает прописными буквами выражение фильтра, действующего в текущей или в заданной области.  
LOOKUP (<поле 1>, <выр.>, <поле 2>) Ищет первое вхождение <выражение> в <поле 2> активной БД и возвращает значения <поле 1> из той же БД. Если файл индексирован и индекс открыт, то ведётся индексированный поиск, если нет – последовательный. Если поиск не удачный, возвращается пустая строка и EOF()=.T.  
LUPDATE ([<область>]) Дата последнего изменения БД.  
ORDER ([<область>]) Выдают прописными буквами имя главного индексного файла БД.  
RECNO ([<область>]) Возвращает номер текущей записи активной БД.  
RECCOUNT ([<область>]) Общее количество записей в БД.  
RECSIZE ([<область>]) Размер записи файла БД в байтах.  
HEADER ([<область>]) Размер заголовка в байтах. Величина заголовка в байтах равна 32*(N+1)+1, где N - число полей БД.  
SEEK (<выр.> [,<область>]) Выполняет поиск записей с <выр.> в индексном файле и устанавливает на неё указатель текущей.  
UPDATE () Вырабатывает (.Т.), если при выполнении команды READ данные в её областях GET каким-либо образом изменились.  
SET FULLPATH ON/OFF Если OFF, то маршрут не возвращается (только имя диска и файла). По умолчанию – ON.  
CURDIR ([<диск>]) Возвращает прописными текущую директорию на активном или заданном диске. Если такого диска нет возвращается пустая строка.  
SYS (5) Возвращает имя активного по умолчанию диска.  
SYS (2003) Возвращает имя текущей директории по умолчанию. Имя диска не выводится.  
SYS (2004) Возвращает полное имя директории, где находится FoxPro.  
FULLPATH (<файл 1> [,<выр.N>/<файл 2>]) Возвращает полный маршрут DOS для указанного <файла 1 > или маршрут связи с другим <файлом 2 >. Если имя <файла 1> задано пустой строкой, то будет выдан полный путь, к текущей директории включая имя диска.  
Функции позиционирования выдачи данных
COL () Номер текущей колонки на экране/окне.  
ROW () Номер текущей строки на экране/окне.  
PCOL () Номер текущей колонки на принтере.  
PROW () Номер текущей строки на принтере.  
Функции подстановки
& <символьная переменная> [<выр. С>] Макроподстановка <символьной переменной> или MEMO – поля не посредственно в объект, который она изображает. a = ‘BRIG1’ USE & a
EVALUATE (<выр. С>) Рассматривает <выр. С> как некоторое допустимое для FoxPro выражение и возвращает для него вычисленный результат. ?EVALUATE (‘2**3’) && 8
=<выр.> [, <выр.>] … В качестве выражений можно использовать как встроенные, так и пользовательские функции. =CAPSLOCK (.T.) =INKEY (120)
Функции конвертирования и распознавания букв
ISALPHA (<выр. С>) Возвращает.Т., если <выр. С> начинается с буквы.  
ISLOWER (<выр. С>) Возвращает.Т., если <выр. С> начинается со строчной буквы.  
ISUPPER (<выр. С>) Возвращает.Т., если <выр. С> начинается с прописной буквы.  
LOWER (<выр. С>) Преобразовывает все прописные буквы <выр. С> в строчные.  
PROPER (<выр. С>) Преобразовывает первую букву в прописную, остальные в строчные.  
UPPER (<выр. С>) Преобразовывает все строчные буквы <выр. С> в прописные.  

Выполнить Практическое задание № 5. (см. Приложение)


Приложение

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...