Команда CREATE CURSOR - SQL
См. также Пример
Синтаксис
CREATE CURSOR dbf_name
Параметры
dbf_name
Задает имя для создаваемой временной таблицы. В качестве dbf_name можно использовать выражение имени.
fname
Задает имя поля во временной таблице. В качестве fname можно использовать выражение имени.
type
Задает букву, указывающую тип данных для поля.
precision
Задает ширину поля, заданного именем fname. Этот аргумент является обязательным для некоторых типов данных.
scale
Задает количество десятичных позиций для заданного типа данных. Этот аргумент
является обязательным для некоторых типов данных.
В следующей таблице показано, какие значения могут принимать аргументы type, precision и scale:
(fname1 type [(precision [, scale])
[NULL | NOT NULL]
[CHECK lExpression [ERROR cMessageText]]
[DEFAULT eExpression]
[UNIQUE]
[NOCPTRANS]]
[, fname2 ...]])
| FROM ARRAY ArrayName
FieldType
| nFieldWidth
| nPrecision
| Описание типа данных
|
C
| n
| -
| Символьное поле ширины n
|
D
| -
| -
| Дата
|
T
| -
| -
| Тип DateTime
|
N
| n
| d
| Числовое поле ширины n, содержащее d десятичных знаков
|
F
| n
| d
| Плавающее числовое поле ширины n, содержащее d десятичных знаков
|
I
| -
| -
| Целочисленное
|
B
| -
| d
| Двойной
|
Y
| -
| -
| Тип Currency
|
L
| -
| -
| Логический
|
M
| -
| -
| Memo
|
G
| -
| -
| General
|
P
| -
| -
| Рисунок
|
NULL
Разрешает иметь в поле значения NULL.
NOT NULL
Запрещает значения NULL в поле.
Если опущены оба параметра NULL и NOT NULL, то допустимость значений NULL в по е определяется текущей установокй SET NULL. Однако если вы, опустив NULL и NOT NULL, включили предложение PRIMARY KEY или UNIQUE, текущая установка SET NULL игнорируется и для данного поля по умолчанию принимается опция NOT NULL.
CHECK lExpression
Задает правило для поля. В качестве lExpression можно указать пользовательскую функцию.
ERROR cMessageText
Задает текст сообщения об ошибке, выдаваемого при нарушении правила поля. Это сообщение выдается только в том случае, когда данные изменяются в окне просмот а или окне редактирования.
DEFAULT eExpression
Задает значение, принимаемое в поле по умолчанию. Тип данных выражения eExpression должен совпадать с типом данных поля.
UNIQUE
Создает для поля индекс-кандидат. Имя тега индекса-кандидата совпадает с име ем поля. Подробнее об индексах-кандидатах см. тему Использование индексов и главу 7 "Работа с таблицами" Руководства разработчика.
Замечание Индексы-кандидаты, создаваемые с помощью опции UNIQUE, отличаются от ин ексов, создаваемых с помощью опции UNIQUE команды INDEX. В индексе, созданном по команде INDEX с опцией UNIQUE, разрешены повторяющиеся ключи индекса; в ин ексах-кандидатах повторение ключей индекса запрещено.
В поле, используемом для индекса-кандидата, не допускаются значения NULL и повторяющиеся записи. Однако если вы создали индекс-кандидат для поля, подде живающего значения NULL, Visual FoxPro не будет генерировать ошибку. Ошибка будет сгенерирована в том случае, когда вы попытаетесь ввести в поле, используемое для индекса-кандидата, значение NULL или повторяющееся значение.
NOCPTRANS
Запрещает преобразование содержимого символьных и memo-полей в другую кодовую страницу. Если курсор преобразуется в другую кодовую страницу, то поля, для которых задана опция NOCPTRANS, транслироваться не будут. NOCPTRANS можно указ вать только для символьных и memo-полей.
В следующем примере создается курсор MYCURSOR, содержащий два символьных поля и два memo-поля. Для второго символьного поля CHAR2 и второго memo-поля MEMO2 задана опция NOCPTRANS, запрещающая их трансляцию.
CREATE CURSOR mycursor (char1 C(10), char2 C(10) NOCPTRANS,;
memo1 M, memo2 M NOCPTRANS)
FROM ARRAY ArrayName
Задает имя существующего массива, содержимое которого представляет собой значе ия имени, типа, ширины и масштаба для каждого поля временной таблицы. Описание формата содержимого этого массива см. в теме AFIELDS( ).
Комментарии
Команда CREATE CURSOR создает временную таблицу, которая существует только до ее закрытия. Временной таблицей, созданной с помощью команды CREATE CURSOR, мож о манипулировать, как и любой другой таблицей. Ее можно просматривать, индекси овать, присоединять к ней записи и изменять их.
Временная таблица доступна в рабочей области с наименьшим из имеющихся номе ов; к этой таблице можно обращаться по псевдониму. Для каждого поля временной таб ицы определяется его имя, тип, ширина и масштаб. Эти определения можно задать как в самой команде, так и в некотором массиве. Временная таблица открывается д я монопольного пользования, независимо от установки SET EXCLUSIVE.
Новое на сайте
-
Обновлен портфель программиста
Добавлены: Установка HTML Help (Создание справочной системы), Imagedit.zip - Графический редактор ( ico и bmp), Библиотека локализации HTML Help (Русский) -
Новые примеры программ
Установка библиотек, Игровая программа "Охота на лис", Установка библиотек "Охота на лис", plastic -"Платежки", Библиотеки (на FPD26), platan -"Платежки" (на Clipper 5.2) -
Обновленна справка
Подсказки, технология программирования и использование Visual FoxPro. Команды, функции, операторы, объекты, свойства, события и методы.