Skip to content

Commit cd8affd

Browse files
authored
DBZ-8582 Added vector data type in mariadb lexer and parser. (#4550)
1 parent c656ad9 commit cd8affd

File tree

4 files changed

+8
-0
lines changed

4 files changed

+8
-0
lines changed

sql/mariadb/MariaDBLexer.g4

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -289,6 +289,7 @@ LONGTEXT : 'LONGTEXT';
289289
ENUM : 'ENUM';
290290
VARYING : 'VARYING';
291291
SERIAL : 'SERIAL';
292+
VECTOR : 'VECTOR';
292293

293294
// Interval type Keywords
294295

sql/mariadb/MariaDBParser.g4

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2298,6 +2298,7 @@ dataType
22982298
) lengthOneDimension? (SIGNED | UNSIGNED | ZEROFILL)* # dimensionDataType
22992299
| typeName = REAL lengthTwoDimension? (SIGNED | UNSIGNED | ZEROFILL)* # dimensionDataType
23002300
| typeName = DOUBLE PRECISION? lengthTwoDimension? (SIGNED | UNSIGNED | ZEROFILL)* # dimensionDataType
2301+
| typeName = VECTOR ( lengthOneDimension ) # dimensionDataType
23012302
| typeName = (DECIMAL | DEC | FIXED | NUMERIC | FLOAT | FLOAT4 | FLOAT8) lengthTwoOptionalDimension? (
23022303
SIGNED
23032304
| UNSIGNED

sql/mariadb/examples/fast/ddl_create.sql

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -180,6 +180,9 @@ CREATE TABLE `test_table\\`(id INT(11) NOT NULL, PRIMARY KEY (`id`)) ENGINE = IN
180180
CREATE TABLE `\\test_table`(id INT(11) NOT NULL, PRIMARY KEY (`id`)) ENGINE = INNODB;
181181
CREATE TABLE `\\test\\_table\\`(id INT(11) NOT NULL, PRIMARY KEY (`id`)) ENGINE = INNODB;
182182

183+
-- Create Table with vector column
184+
CREATE TABLE VECTOR_TABLE (id INT AUTO_INCREMENT PRIMARY KEY, embedding1 VECTOR(3) DEFAULT NULL, embedding VECTOR(3));
185+
183186
#end
184187
#begin
185188
-- Rename table

sql/mariadb/examples/fast/dml_insert.sql

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,3 +44,6 @@ insert INTO `wptests_posts` (`post_author`, `post_date`, `post_date_gmt`, `post_
4444
#end
4545
insert into sql_log values(retGUID,log_type,log_text,0,0,current_user,now());
4646
insert into sql_log values(retGUID,log_type,log_text,0,0,current_user(),now());
47+
48+
INSERT INTO VECTOR_TABLE VALUES (1, x'e360d63ebe554f3fcdbc523f4522193f5236083d')
49+
INSERT INTO VECTOR_TABLE VALUES (11,Vec_FromText('[0.418708,0.809902,0.823193,0.598179,0.0332549]'));

0 commit comments

Comments
 (0)