Repository: incubator-trafodion
Updated Branches:
  refs/heads/master 8a328df22 -> 1ce089a0f


Add VARCHAR2 for *Trafodion SQL Reference Manual*


Project: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-trafodion/commit/c87f7f6d
Tree: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/tree/c87f7f6d
Diff: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/diff/c87f7f6d

Branch: refs/heads/master
Commit: c87f7f6d277cdaa3bed6f1abc82db0e9c5b75743
Parents: b2b01f4
Author: liu.yu <[email protected]>
Authored: Fri Dec 8 19:11:21 2017 +0800
Committer: liu.yu <[email protected]>
Committed: Fri Dec 8 19:11:21 2017 +0800

----------------------------------------------------------------------
 .../_chapters/sql_language_elements.adoc        | 20 +++++++++++---
 .../src/asciidoc/_chapters/sql_statements.adoc  | 28 ++++++++++++++++++++
 2 files changed, 44 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-trafodion/blob/c87f7f6d/docs/sql_reference/src/asciidoc/_chapters/sql_language_elements.adoc
----------------------------------------------------------------------
diff --git 
a/docs/sql_reference/src/asciidoc/_chapters/sql_language_elements.adoc 
b/docs/sql_reference/src/asciidoc/_chapters/sql_language_elements.adoc
index a6284c0..36ad0e5 100644
--- a/docs/sql_reference/src/asciidoc/_chapters/sql_language_elements.adoc
+++ b/docs/sql_reference/src/asciidoc/_chapters/sql_language_elements.adoc
@@ -323,10 +323,11 @@ The following table summarizes the {project-name} SQL 
data types:
 [cols="14%,14%,24%,24%,24%",options="header"]
 |===
 | Category | Type | SQL Designation | Description | Size or Range^1^
-.7+| Character String Data Type .3+| Fixed-length character | CHAR[ACTER]      
    | Fixed-length character data            | 1 to 200000 characters^2^ ^8^
+.8+| Character String Data Type .3+| Fixed-length character | CHAR[ACTER]      
    | Fixed-length character data            | 1 to 200000 characters^2^ ^8^
 | NCHAR                | Fixed-length character data in predefined national 
character set | 1 to 200000 bytes^3^ ^7^ ^9^
 | NATIONAL CHAR[ACTER] | Fixed-length character data in predefined national 
character set | 1 to 200000 bytes^3^ ^7^ ^9^
-.4+| Variable-length character | VARCHAR                      | 
Variable-length ASCII character string | 1 to 200000 characters^4^ ^8^
+.5+| Variable-length character | VARCHAR                      | 
Variable-length ASCII character string | 1 to 200000 characters^4^ ^8^
+| VARCHAR2                     | Variable-length ASCII character string | 1 to 
200000 characters^4^ ^8^
 | CHAR[ACTER] VARYING          | Variable-length ASCII character string | 1 to 
200000 characters^4^ ^8^
 | NCHAR VARYING                | Variable-length ASCII character string | 1 to 
200000 bytes^4^ ^7^ ^9^
 | NATIONAL CHAR[ACTER] VARYING | Variable-length ASCII character string | 1 to 
200000 characters^4^ ^7^ ^8^
@@ -607,6 +608,7 @@ numeric, datetime, or interval data.
 CHAR[ACTER] [(length [unit])] [char-set] [UPSHIFT] [[NOT]CASESPECIFIC]
 | CHAR[ACTER] VARYING(length [unit]) [char-set] [UPSHIFT] [[NOT]CASESPECIFIC]
 | VARCHAR(length [unit]) [CHARACTERS] [char-set] [UPSHIFT] [[NOT]CASESPECIFIC]
+| VARCHAR2(length [unit]) [CHARACTERS] [char-set] [UPSHIFT] [[NOT]CASESPECIFIC]
 | NCHAR [(length)] [UPSHIFT] [[NOT]CASESPECIFIC]
 | NCHAR VARYING (length) [UPSHIFT] [[NOT]CASESPECIFIC]
 | NATIONAL CHAR[ACTER] [(length)] [UPSHIFT] [[NOT]CASESPECIFIC]
@@ -614,8 +616,10 @@ CHAR[ACTER] [(length [unit])] [char-set] [UPSHIFT] 
[[NOT]CASESPECIFIC]
 ```
 
 +
-CHAR, NCHAR, and NATIONAL CHAR are fixed-length character types. CHAR
-VARYING, VARCHAR, NCHAR VARYING and NATIONAL CHAR VARYING are
+CHAR, NCHAR, and NATIONAL CHAR are fixed-length character types. 
+
++
+CHAR VARYING, VARCHAR, VARCHAR2, NCHAR VARYING and NATIONAL CHAR VARYING are
 varying-length character types.
 
 * `_length_`
@@ -669,6 +673,14 @@ an equivalent column that is not VARYING.
 specifies a column with varying-length character data. VARCHAR is
 equivalent to data type CHAR[ACTER] VARYING.
 
+* `VARCHAR2 (_length_ [_unit_]) [_char-set_] [UPSHIFT] [[NOT]CASESPECIFIC]`
++
+specifies a column with varying-length character data. VARCHAR2 is
+equivalent to data type CHAR[ACTER] VARYING.
+
+NOTE: Trafodion supports VARCHAR2 as a synonym for VARCHAR. This improves 
portability from some popular databases. 
+VARCHAR2 in Trafodion, however, has the standard semantics of VARCHAR. That 
is, an empty string is a non-null value.
+
 * `NCHAR [(_length_)] [UPSHIFT] [[NOT]CASESPECIFIC], NATIONAL CHAR[ACTER] 
[(_length_)] [UPSHIFT] [[NOT]CASESPECIFIC]`
 +
 specifies a column with data in the predefined national character set (UCS2).

http://git-wip-us.apache.org/repos/asf/incubator-trafodion/blob/c87f7f6d/docs/sql_reference/src/asciidoc/_chapters/sql_statements.adoc
----------------------------------------------------------------------
diff --git a/docs/sql_reference/src/asciidoc/_chapters/sql_statements.adoc 
b/docs/sql_reference/src/asciidoc/_chapters/sql_statements.adoc
index a81499c..7ffd7b9 100644
--- a/docs/sql_reference/src/asciidoc/_chapters/sql_statements.adoc
+++ b/docs/sql_reference/src/asciidoc/_chapters/sql_statements.adoc
@@ -398,6 +398,8 @@ data-type is:
          [upshift] [[not] casespecific]
    | varchar (length) [character set char-set-name]
          [upshift] [[not] casespecific]
+   | varchar2 (length) [character set char-set-name]
+         [upshift] [[not] casespecific]         
    | numeric [(precision [,scale])] [signed|unsigned]
    | nchar [(length) [character set char-set-name]
          [upshift] [[not] casespecific]
@@ -1878,6 +1880,7 @@ _sql-datatype_ can be:
 | char[acter] +
 char[acter] varying +
 varchar +
+varchar2 +
 pic[ture] x^1^ +
 nchar +
 nchar varying +
@@ -2660,6 +2663,8 @@ data-type is:
           [upshift] [[not]casespecific]
   | varchar (length) [character set char-set-name]
           [upshift] [[not]casespecific]
+  | varchar2 (length) [character set char-set-name]
+          [upshift] [[not]casespecific]          
   | nchar (length) [characters] [upshift] [[not]casespecific]
   | nchar varying(length [characters]) [upshift] [[not] casespecific]
   | numeric [(precision [,scale])] [signed|unsigned]
@@ -3380,6 +3385,29 @@ PRIMARY KEY (store_id, item_id, sale_date, chcol))
 DIVISION BY (SUBSTR(chcol, 1, 5)); 
 ```
 
+* This example creates a table using varchar2 data type which is same as 
varchar.
++
+```
+CREATE TABLE testvarchar2(c1 varchar(32), c2 varchar2(32) upshift not 
casespecific);
+
+--- SQL operation complete.
+
+
+SHOWDDL testvarchar2;
+
+CREATE TABLE TRAFODION.SEABASE.TESTVARCHAR2
+  (
+    C1                               VARCHAR(32) CHARACTER SET ISO88591 COLLATE
+      DEFAULT DEFAULT NULL NOT SERIALIZED
+  , C2                               VARCHAR(32) CHARACTER SET ISO88591 COLLATE
+      DEFAULT UPSHIFT DEFAULT NULL NOT SERIALIZED
+  )
+ATTRIBUTES ALIGNED FORMAT
+;
+
+--- SQL operation complete.
+```
+
 <<<
 [[create_table_examples_create_table_as]]
 ==== Examples of CREATE TABLE AS

Reply via email to