CREATE CURSOR

From Lianjapedia
Jump to: navigation, search

Purpose

Creates a temporary table

Syntax

CREATE CURSOR <cursor>

[(<column> <datatype> [(<precision> [,<scale>])]

[NULL | NOT NULL]

[CHECK <expression> [ERROR <text>]]

[AUTOINC [NEXTVALUE <NextValue> [STEP <StepValue>]]]

[DEFAULT <expression>]

[UNIQUE [COLLATE <cCollateSequence>]]

[NOCPTRANS]

[, ...]]

| [FROM ARRAY <array>] | [FROM XML <xml-file> [LOAD]]

See Also

ALTER INDEX, ALTER TABLE, CREATE TABLE, CREATE INDEX, CREATE VIEW, DROP DATABASE, DROP INDEX, DROP TABLE, SELECT, USE

Description

The CREATE CURSOR command creates a temporary table with the specified name. Columns to be included in the table can be specified individually or details loaded from an existing array.

Keywords Description
cursor The name of the temporary table to be created.
column The name of the column to be created.
datatype The column's data type.
precision The width of the column where not fixed.
scale The column's decimal places where required.
NULL | NOT NULL Specifies whether this column can have NULL values. NULL allows NULL values, NOT NULL prohibits NULL values.
CHECK <expression> Validation rule for the column. The <expression> must evaluate to true (.T.), valid value or false (.F.), invalid value.
ERROR <text> An optional error message, <text>, to be displayed when the CHECK <expression> validation fails.
AUTOINC Enables auto incrementing for the column
NEXTVALUE <NextValue> The specified <NextValue> is the numeric start value for the auto incrementing.
STEP <StepValue> The specified <StepValue> determines the increment value. By default values are incremented by 1.
DEFAULT <expression> The specified <expression> is used as the default value for the column.
UNIQUE Creates a unique index on this column.
COLLATE <cCollateSequence> The specified <cCollateSequence> is used as the index collating sequence.
NOCPTRANS Disables code page translation for character and memo columns.
FROM ARRAY <array> The table structure is taken from an existing array, whose name is specified in <array>. The array contents must be the column name, type, precision and scale for each column in the temporary table.
FROM XML <xml-file> [LOAD] The table structure is taken from the XML file whose name is specified in <xml-file>. If the LOAD option is specified any data in the xml file is loaded into the newly created cursor.

Example

CREATE CURSOR tempstaff;
  (staff_no CHAR(6) NOT NULL,;
  lastname CHAR(15) NOT NULL,;
  firstname CHAR(10),;
  hiredate DATE,;
  location CHAR(15),;
  supervisor CHAR(6),;
  salary DECIMAL(6,0),;
  picture VARBINARY,;
  history LONG VARCHAR,;
  commission DECIMAL(4,1))