summaryrefslogtreecommitdiff
path: root/sql
diff options
context:
space:
mode:
authorbar@bar.mysql.r18.ru <>2003-09-15 10:26:48 +0500
committerbar@bar.mysql.r18.ru <>2003-09-15 10:26:48 +0500
commit1726b4d89e613806837cb2a3d8ee19ed37664c97 (patch)
tree4862f70d6bf1d4769bb70053bf3b37f382776f99 /sql
parent6d62d31049377a7c886425552e14772d1416c34e (diff)
downloadmariadb-git-1726b4d89e613806837cb2a3d8ee19ed37664c97.tar.gz
New syntax:
CREATE TABLE t1(a NVARCHAR(10)) This is for compatibility with MSSQL, DB2, Informix and some other DBMSs. Note, standard SQL doesn't have "NVARCHAR" syntax. There are only these syntaxes in SQL2003: NATIONAL VARCHAR NCHAR VARCHAR NATIONAL CHARACTER VARYING NCHAR VARYING - Tests were added for all the above syntaxes.
Diffstat (limited to 'sql')
-rw-r--r--sql/lex.h1
-rw-r--r--sql/sql_yacc.yy3
2 files changed, 4 insertions, 0 deletions
diff --git a/sql/lex.h b/sql/lex.h
index fb3c018de42..e11b50ed16d 100644
--- a/sql/lex.h
+++ b/sql/lex.h
@@ -293,6 +293,7 @@ static SYMBOL symbols[] = {
{ "NOT", SYM(NOT),0,0},
{ "NULL", SYM(NULL_SYM),0,0},
{ "NUMERIC", SYM(NUMERIC_SYM),0,0},
+ { "NVARCHAR", SYM(NVARCHAR_SYM),0,0},
{ "OFFSET", SYM(OFFSET_SYM),0,0},
{ "OLD_PASSWORD", SYM(OLD_PASSWORD),0,0},
{ "ON", SYM(ON),0,0},
diff --git a/sql/sql_yacc.yy b/sql/sql_yacc.yy
index 54d708fef04..2a35c03f3b4 100644
--- a/sql/sql_yacc.yy
+++ b/sql/sql_yacc.yy
@@ -302,6 +302,7 @@ bool my_yyoverflow(short **a, YYSTYPE **b,int *yystacksize);
%token NEW_SYM
%token NCHAR_SYM
%token NCHAR_STRING
+%token NVARCHAR_SYM
%token NOT
%token NO_SYM
%token NULL_SYM
@@ -1339,6 +1340,7 @@ varchar:
nvarchar:
NATIONAL_SYM VARCHAR {}
+ | NVARCHAR_SYM {}
| NCHAR_SYM VARCHAR {}
| NATIONAL_SYM CHAR_SYM VARYING {}
| NCHAR_SYM VARYING {}
@@ -4568,6 +4570,7 @@ keyword:
| NEW_SYM {}
| NO_SYM {}
| NONE_SYM {}
+ | NVARCHAR_SYM {}
| OFFSET_SYM {}
| OLD_PASSWORD {}
| OPEN_SYM {}