1811
1811
Lex->length= (char*) "1";
1812
$$=DRIZZLE_TYPE_TINY;
1816
1816
Lex->length=(char*) "1";
1817
$$=DRIZZLE_TYPE_TINY;
1821
1821
Lex->length=(char*) "1";
1822
$$=DRIZZLE_TYPE_TINY;
1824
1824
| char '(' NUM ')' opt_binary
1826
1826
Lex->length=$3.str;
1827
$$=FIELD_TYPE_STRING;
1827
$$=DRIZZLE_TYPE_STRING;
1829
1829
| char opt_binary
1831
1831
Lex->length=(char*) "1";
1832
$$=FIELD_TYPE_STRING;
1832
$$=DRIZZLE_TYPE_STRING;
1834
1834
| nchar '(' NUM ')' opt_bin_mod
1836
1836
Lex->length=$3.str;
1837
$$=FIELD_TYPE_STRING;
1837
$$=DRIZZLE_TYPE_STRING;
1838
1838
Lex->charset=national_charset_info;
1840
1840
| nchar opt_bin_mod
1842
1842
Lex->length=(char*) "1";
1843
$$=FIELD_TYPE_STRING;
1843
$$=DRIZZLE_TYPE_STRING;
1844
1844
Lex->charset=national_charset_info;
1846
1846
| BINARY '(' NUM ')'
1848
1848
Lex->length=$3.str;
1849
1849
Lex->charset=&my_charset_bin;
1850
$$=FIELD_TYPE_STRING;
1850
$$=DRIZZLE_TYPE_STRING;
1854
1854
Lex->length= (char*) "1";
1855
1855
Lex->charset=&my_charset_bin;
1856
$$=FIELD_TYPE_STRING;
1856
$$=DRIZZLE_TYPE_STRING;
1858
1858
| varchar '(' NUM ')' opt_binary
1860
1860
Lex->length=$3.str;
1861
$$= FIELD_TYPE_VARCHAR;
1861
$$= DRIZZLE_TYPE_VARCHAR;
1863
1863
| nvarchar '(' NUM ')' opt_bin_mod
1865
1865
Lex->length=$3.str;
1866
$$= FIELD_TYPE_VARCHAR;
1866
$$= DRIZZLE_TYPE_VARCHAR;
1867
1867
Lex->charset=national_charset_info;
1869
1869
| VARBINARY '(' NUM ')'
1871
1871
Lex->length=$3.str;
1872
1872
Lex->charset=&my_charset_bin;
1873
$$= FIELD_TYPE_VARCHAR;
1873
$$= DRIZZLE_TYPE_VARCHAR;
1875
1875
| YEAR_SYM opt_len field_options
1876
{ $$=FIELD_TYPE_YEAR; }
1876
{ $$=DRIZZLE_TYPE_YEAR; }
1878
{ $$=FIELD_TYPE_NEWDATE; }
1878
{ $$=DRIZZLE_TYPE_NEWDATE; }
1880
{ $$=FIELD_TYPE_TIME; }
1880
{ $$=DRIZZLE_TYPE_TIME; }
1883
1883
/* Unlike other types TIMESTAMP fields are NOT NULL by default */
1884
1884
Lex->type|= NOT_NULL_FLAG;
1885
$$=FIELD_TYPE_TIMESTAMP;
1885
$$=DRIZZLE_TYPE_TIMESTAMP;
1888
{ $$=FIELD_TYPE_DATETIME; }
1888
{ $$=DRIZZLE_TYPE_DATETIME; }
1889
1889
| BLOB_SYM opt_len
1891
1891
Lex->charset=&my_charset_bin;
1892
$$=DRIZZLE_TYPE_BLOB;
1894
1894
| TEXT_SYM opt_len opt_binary
1895
{ $$=FIELD_TYPE_BLOB; }
1895
{ $$=DRIZZLE_TYPE_BLOB; }
1896
1896
| DECIMAL_SYM float_options field_options
1897
{ $$=FIELD_TYPE_NEWDECIMAL;}
1897
{ $$=DRIZZLE_TYPE_NEWDECIMAL;}
1898
1898
| NUMERIC_SYM float_options field_options
1899
{ $$=FIELD_TYPE_NEWDECIMAL;}
1899
{ $$=DRIZZLE_TYPE_NEWDECIMAL;}
1900
1900
| FIXED_SYM float_options field_options
1901
{ $$=FIELD_TYPE_NEWDECIMAL;}
1901
{ $$=DRIZZLE_TYPE_NEWDECIMAL;}
1903
1903
{Lex->interval_list.empty();}
1904
1904
'(' string_list ')' opt_binary
1905
{ $$=FIELD_TYPE_ENUM; }
1905
{ $$=DRIZZLE_TYPE_ENUM; }
1907
1907
{ Lex->interval_list.empty();}
1908
1908
'(' string_list ')' opt_binary
1909
{ $$=FIELD_TYPE_SET; }
1909
{ $$=DRIZZLE_TYPE_SET; }
1912
$$=FIELD_TYPE_LONGLONG;
1912
$$=DRIZZLE_TYPE_LONGLONG;
1913
1913
Lex->type|= (AUTO_INCREMENT_FLAG | NOT_NULL_FLAG | UNSIGNED_FLAG |
1941
INT_SYM { $$=FIELD_TYPE_LONG; }
1942
| TINYINT { $$=FIELD_TYPE_TINY; }
1943
| SMALLINT { $$=FIELD_TYPE_SHORT; }
1944
| BIGINT { $$=FIELD_TYPE_LONGLONG; }
1941
INT_SYM { $$=DRIZZLE_TYPE_LONG; }
1942
| TINYINT { $$=DRIZZLE_TYPE_TINY; }
1943
| SMALLINT { $$=DRIZZLE_TYPE_SHORT; }
1944
| BIGINT { $$=DRIZZLE_TYPE_LONGLONG; }
1950
$$= FIELD_TYPE_DOUBLE;
1950
$$= DRIZZLE_TYPE_DOUBLE;
1953
{ $$=FIELD_TYPE_DOUBLE; }
1953
{ $$=DRIZZLE_TYPE_DOUBLE; }
1954
1954
| DOUBLE_SYM PRECISION
1955
{ $$=FIELD_TYPE_DOUBLE; }
1955
{ $$=DRIZZLE_TYPE_DOUBLE; }