SQL-J Language Reference
Page 105 of 121

NVARCHAR

NVARCHAR is similar to VARCHAR, except it is one of the international data types suitable for localized databases. For more information, see International String Data Types.

For information about locales, see Appendix B, "Localizing Cloudscape" in the Cloudscape Developer's Guide.

Syntax for Column Definition

{
    NVARCHAR |
    NCHAR VARYING |
    NATIONAL CHAR VARYING |
    NATIONAL CHARACTER VARYING
}(length)

length is an unsigned integer literal, and it must not be greater than the constraint of the integer used to specify the length, the value java.lang.Integer.MAX_VALUE.

Corresponding Compile-Time Java Type

java.lang.String

JDBC Metadata Type (java.sql.Types)

VARCHAR

Cloudscape does not pad an NVARCHAR value whose length is less than expected. Cloudscape truncates spaces from a string value when a length greater than the NVARCHAR expected is provided. Characters other than spaces are not truncated, and instead cause an exception to be raised. When binary comparison operators are applied to NVARCHARs, the lengths of the operands are not altered, and spaces at the end of the values are ignored.

When NCHARs or CHARs and NVARCHARs are mixed in expressions, the shorter value is padded with spaces to the length of the longer value.

The type of a string literal is CHAR, not NVARCHAR.