summaryrefslogtreecommitdiff
path: root/sql/sql_yacc.yy
diff options
context:
space:
mode:
authorunknown <bar@bar.mysql.r18.ru>2003-03-27 13:09:09 +0400
committerunknown <bar@bar.mysql.r18.ru>2003-03-27 13:09:09 +0400
commit8bbbd1d6f84740e1def5d34251f1942c19805543 (patch)
treecf02a1f110ca4ad00d79000f82123c306165adf0 /sql/sql_yacc.yy
parent27e77a8fd6f5531e64557c20d594b85050df96b6 (diff)
downloadmariadb-git-8bbbd1d6f84740e1def5d34251f1942c19805543.tar.gz
More OpenGIS compatibility:
Point, MultiLine, Poligom, etc, are now not aliases for Geometry, but separate field types.
Diffstat (limited to 'sql/sql_yacc.yy')
-rw-r--r--sql/sql_yacc.yy14
1 files changed, 12 insertions, 2 deletions
diff --git a/sql/sql_yacc.yy b/sql/sql_yacc.yy
index 84c68d37c91..1d9a3f2df10 100644
--- a/sql/sql_yacc.yy
+++ b/sql/sql_yacc.yy
@@ -1114,7 +1114,8 @@ field_spec:
(enum enum_field_types) $3,
lex->length,lex->dec,lex->type,
lex->default_value, lex->comment,
- lex->change,lex->interval,lex->charset))
+ lex->change,lex->interval,lex->charset,
+ lex->uint_geom_type))
YYABORT;
};
@@ -1167,20 +1168,28 @@ type:
| BLOB_SYM opt_len { Lex->charset=&my_charset_bin;
$$=FIELD_TYPE_BLOB; }
| GEOMETRY_SYM { Lex->charset=&my_charset_bin;
+ Lex->uint_geom_type= Field::GEOM_GEOMETRY;
$$=FIELD_TYPE_GEOMETRY; }
| GEOMETRYCOLLECTION { Lex->charset=&my_charset_bin;
+ Lex->uint_geom_type= Field::GEOM_GEOMETRYCOLLECTION;
$$=FIELD_TYPE_GEOMETRY; }
| POINT_SYM { Lex->charset=&my_charset_bin;
+ Lex->uint_geom_type= Field::GEOM_POINT;
$$=FIELD_TYPE_GEOMETRY; }
| MULTIPOINT { Lex->charset=&my_charset_bin;
+ Lex->uint_geom_type= Field::GEOM_MULTIPOINT;
$$=FIELD_TYPE_GEOMETRY; }
| LINESTRING { Lex->charset=&my_charset_bin;
+ Lex->uint_geom_type= Field::GEOM_LINESTRING;
$$=FIELD_TYPE_GEOMETRY; }
| MULTILINESTRING { Lex->charset=&my_charset_bin;
+ Lex->uint_geom_type= Field::GEOM_MULTILINESTRING;
$$=FIELD_TYPE_GEOMETRY; }
| POLYGON { Lex->charset=&my_charset_bin;
+ Lex->uint_geom_type= Field::GEOM_POLYGON;
$$=FIELD_TYPE_GEOMETRY; }
| MULTIPOLYGON { Lex->charset=&my_charset_bin;
+ Lex->uint_geom_type= Field::GEOM_MULTIPOLYGON;
$$=FIELD_TYPE_GEOMETRY; }
| MEDIUMBLOB { Lex->charset=&my_charset_bin;
$$=FIELD_TYPE_MEDIUM_BLOB; }
@@ -1549,7 +1558,8 @@ alter_list_item:
(enum enum_field_types) $5,
lex->length,lex->dec,lex->type,
lex->default_value, lex->comment,
- $3.str, lex->interval, lex->charset))
+ $3.str, lex->interval, lex->charset,
+ lex->uint_geom_type))
YYABORT;
}
opt_place