Neoview SQL Reference Manual (R2.2)

Isolation Levels of Transactions and Access Options of Statements
The isolation level of a Neoview SQL transaction defines the degree to which the operations on
data within that transaction are affected by operations of concurrent transactions. When you
specify access options for the DML statements within a transaction, you override the isolation
level of the containing transaction. Each statement then executes with its individual access option.
You can explicitly set the isolation level of a transaction with the SET TRANSACTION statement.
See “SET TRANSACTION Statement” (page 166).
Use of a VALUES Clause for the Source Query Expression
If the query expression consists of the VALUES keyword followed by rows of values, each row
consists of a list of value expressions or a row subquery (a subquery that returns a single row of
column values). A value in a row can also be a scalar subquery (a subquery that returns a single
row consisting of a single column value).
Within a VALUES clause, the operands of a value expression can be numeric, string, datetime,
or interval values; however, an operand cannot reference a column (except in the case of a scalar
or row subquery returning a value or values in its result table).
Requirements for Inserted Rows
Each row to be inserted must satisfy the constraints of the table or underlying base table of the
view. A table constraint is satisfied if the check condition is not false—it is either true or has an
unknown value.
Using Compatible Data Types
To insert a row, you must provide a value for each column in the table that has no default value
. The data types of the values in each row to be inserted must be compatible with the data types
of the corresponding target columns.
Inserting Character Values
Any character string data type is compatible with all other character string data types that have
the same character set. For fixed length, an inserted value shorter than the column length is
padded on the right with single-byte ASCII blanks (HEX 20). If the value is longer than the
column length, string truncation of nonblank trailing characters returns an error, and the truncated
string is not inserted.
For variable length, a shorter inserted value is not padded. As is the case for fixed length, if the
value is longer than the column length, string truncation of nonblank trailing characters returns
an error, and the truncated string is not inserted.
Inserting Numeric Values
Any numeric data type is compatible with all other numeric data types. If you insert a value into
a numeric column that is not large enough, an overflow error occurs. If a value has more digits
to the right of the decimal point than specified by the scale for the column definition, the value
is truncated.
Inserting Interval Values
A value of interval data type is compatible with another value of interval data type only if the
two data types are both year-month or both day-time intervals.
Inserting Date and Time Values
Date, time, and timestamp are the three Neoview SQL datetime data types. A value with a
datetime data type is compatible with another value with a datetime data type only if the values
have the same datetime fields.
Inserting Nulls
124 SQL Statements