SQL$HELP72.HLB  —  INSERT  Arguments

1  –  column-name

    Specifies a list of names of columns in the table or view. You
    can list the columns in any order, but the names must correspond
    to those of the table or view.

    If you do not include all the column names in the list, SQL
    assigns a null value to those not specified, unless columns were:

    o  Defined with a default

    o  Based on a domain that has a default

    o  Defined with the NOT NULL clause in the CREATE TABLE statement

    You cannot omit from an INSERT statement the names of columns
    defined with the NOT NULL clause. If you do, the statement fails.

    Omitting the list of column names altogether is the same as
    listing all the columns of the table or view in the same order
    as they were defined.

    You must omit the list of column names when using the INSERT
    statement to assign values to the segments in a column of data
    type LIST OF BYTE VARYING. Column names are not valid in this
    context.

2  –  CURSOR cursor name

    Keyword required when using cursors. You must use a cursor to
    insert values into any row that contains a column of the LIST OF
    BYTE VARYING data type.

3  –  DEFAULT

    Forces the named column to assume the default value defined for
    that column (or NULL if none is defined).

    If the DEFAULT clause is used in an INSERT statement then one of
    the following will be applied:

    o  If a DEFAULT attribute is present for the column then that
       value will be applied during INSERT.

    o  Else if an AUTOMATIC attribute is present for the column then
       that value will be applied during INSERT. This can only happen
       if the SET FLAGS 'AUTO_OVERRIDE' is used since during normal
       processing these columns are read-only.

    o  Otherwise a NULL will be applied during INSERT.

4  –  DEFAULT_VALUES

    Specifies that every column in the table is assigned the default
    value (or NULL, if the column has no default value).

5  –  INTO parameter

    Inserts the value specified to a specified parameter. The INTO
    parameter clause is not valid in interactive SQL.

6  –  INTO

    Syntax options:

    INTO table-name | INTO view-name

    The name of the target table or view to which you want to add a
    row. Inserts the value specified to a specified parameter. The
    INTO parameter clause is not valid in interactive SQL.

7  –  limit-to-clause

    See Select_Expressions in the Oracle Rdb SQL Reference Manual for
    a description of the LIMIT TO expression.

8  –  OPTIMIZE AS query name

    The OPTIMIZE AS clause assigns a name to the query. Use the SET
    FLAGS 'STRATEGY' to see this name displayed.

9  –  OPTIMIZE_FOR

    The OPTIMIZE FOR clause specifies the preferred optimizer
    strategy for statements that specify a select expression. The
    following options are available:

    o  FAST FIRST

       A query optimized for FAST FIRST returns data to the user as
       quickly as possible, even at the expense of total throughput.

       If a query can be cancelled prematurely, you should specify
       FAST FIRST optimization. A good candidate for FAST FIRST
       optimization is an interactive application that displays
       groups of records to the user, where the user has the option
       of aborting the query after the first few screens. For
       example, singleton SELECT statements default to FAST FIRST
       optimization.

       If optimization strategy is not explicitly set, FAST FIRST is
       the default.

    o  TOTAL TIME

       If your application runs in batch, accesses all the records in
       the query, and performs updates or writes a report, you should
       specify TOTAL TIME optimization. Most queries benefit from
       TOTAL TIME optimization.

    o  SEQUENTIAL ACCESS

       Forces the use of sequential access. This is particularly
       valuable for tables that use the strict partitioning
       functionality.

10  –  OPTIMIZE USING outline name

    The OPTIMIZE USING clause explicitly names the query outline to
    be used with the select expression even if the outline ID for the
    select expression and for the outline are different.

    See the CREATE OUTLINE statement for more information on creating
    an outline.

11  –  OPTIMIZE_WITH

    Selects one of three optimzation controls: DEFAULT (as used by
    previous versions of Rdb), AGGRESSIVE (assumes smaller numbers of
    rows will be selected), and SAMPLED (which uses literals in the
    query to perform preliminary estimation on indices).

    The following example shows how to use this clause.

    SQL> select * from employees where employee_id  > '00200'
    cont>   optimize with sampled selectivity;

12  –  order-by-clause

    See Select_Expressions in the Oracle Rdb SQL Reference Manual for
    a description of the ORDER BY expression.

13  –  PLACEMENT_ONLY_RETURNING

    Syntax options:

    PLACEMENT ONLY RETURNING DBKEY | PLACEMENT ONLY RETURNING ROWID

    Returns the dbkey of a specified record, but does not insert
    any actual data. The PLACEMENT ONLY RETURNING DBKEY clause lets
    you determine the target page number for records that are to
    be loaded into the database. When you use this clause, only the
    area and page numbers from the dbkeys are returned. Use of this
    clause can improve bulk data loads. If you use the PLACEMENT ONLY
    clause, you can return only the dbkey values. Use the PLACEMENT
    ONLY RETURNING DBKEY clause only in programs that load data into
    an existing database and only with rows placed via a hashed index
    in the storage map. For more information, see the Oracle Rdb
    Guide to Database Design and Definition.

    The keyword ROWID is a synonym to the DBKEY keyword.

14  –  RETURNING value expr

    Returns the value of the column specified in the values list. If
    DBKEY or ROWID is specified, this argument returns the database
    key (dbkey) of the row being added. (The ROWID keyword is a
    synonym to the DBKEY keyword.) When the DBKEY value is valid,
    subsequent queries can use the DBKEY value to access the row
    directly.

    The RETURNING DBKEY clause is not valid in an INSERT statement
    used to assign values to the segments in a column of the LIST OF
    BYTE VARYING data type.

15  –  select-clause

    See Select_Expressions in the Oracle Rdb SQL Reference Manual for
    a description of the SELECT expression.

16  –  select-expr

    Specifies a select expression that specifies a result table.
    The result table can contain zero or more rows. All the rows of
    the result table are added to the target table named in the INTO
    clause.

    This is the only situation supported in SQL that allows you to
    specify a second database in a single SQL statement.

    The number of columns in the result table must correspond to the
    number of columns specified in the list of column names. If you
    did not specify a list of column names, the number of columns in
    the result table must be the same as the number of columns in the
    target table. For each row of the result table, the value of the
    first column is assigned to the first column of the target table,
    the second value to the second column, and so on.

    You cannot specify a select expression in an INSERT statement
    used to assign values to the segments in a column of the LIST OF
    BYTE VARYING data type.

    For detailed information on select expressions, see the Select_
    Expressions HELP topic.

17  –  VALUES value expr

    Specifies a list of values to be added to the table as a single
    row. The values can be specified through parameters, qualified
    parameters, column select expressions, value expressions, or the
    default values.

    The values listed in the VALUES argument can be selected from
    another table, but both tables must reside in the same database.

    The number of values in the list must correspond to the number
    of columns specified in the list of column names. If you did not
    specify a column list, the number of values in the list must be
    the same as the number of columns in the table. The first value
    specified in the list is assigned to the first column, the second
    value to the second column, and so on.

    Values for IDENTITY, COMPUTED BY, and AUTOMATIC COLUMNS are not
    able to be inserted so these column types are not considered for
    the default column list.

    See the SQL Online Help topic INSERT EXAMPLES for an example that
    shows an INSERT statement with a column select expression.
Close Help