更新日期:2024年09月11日
CREATE TABLE 语句建表时指定全文索引列
语法格式
在用户创建表时,可以同时创建全文索引,
需要使用FULLTEXT 关键字进行创建。
CREATE TABLE table_name (
column defination… ,
fulltext [index] index_name (column_name)
[INDEX_DATA_PATH='path']);
表5- 34 参数说明
GBase 8a MPP Cluster 产品手册
5 数据库管理指南
文档版本953(2022-04-10)
南大通用数据技术股份有限公司
918
参数名称
说
明
table_name
表名。
index_name
索引名(索引名表级唯一,索引名将不区分大小写)。
column_name
索引列列名,支持CHAR、VARCHAR 或TEXT 类型。
INDEX_DATA_PATH
可选项,设置索引数据路径标志。如不填写,则索引数据保存
在
默
认
路
径
$GBASE_BASE/userdata/gbase/dbname/metadata/tbname_n*.GED
下: *.FTD、*.fti
path
索引数据存放路径,此路径应为实际已存在的路径。
注意
执行用户需要对path 指定的存放索引数据的目录具有读写权限。
示例
示例1:不指定索引数据存放路径时,存放在默认路径中。
gbase> DROP TABLE IF EXISTS sms;
Query OK, 0 rows affected
gbase> CREATE TABLE sms (MB_No char(11),MB_Text varchar(1000)
DEFAULT NULL, FULLTEXT idx_t (MB_Text));
Query OK, 0 rows affected
示例2:为索引数据指定存放路径。步骤如下(以使用gbase 用户登录数据库为
例)。
步骤1:
gbase 用户对存放索引数据的目录有读写权限,
可以使用root 用户执行如
下命令为gbase 用户赋权:
# chown gbase:gbase /home
步骤2:在每个节点上都要创建存放索引数据的文件夹。
# su - gbase
$ mkdir -p /home/fti
步骤3:将索引数据存放在/home/fti/路径下。
gbase> CREATE TABLE text1 (col1 varchar(100), FULLTEXT INDEX
fti_col1 (col1) INDEX_DATA_PATH='/home/fti/');
Query OK, 0 rows affected
GBase 8a MPP Cluster 产品手册
5 数据库管理指南
文档版本953(2022-04-10)
南大通用数据技术股份有限公司
919
示例3:指定的索引数据路径不存在,系统报告错误信息。
gbase> CREATE TABLE text1 (col1 varchar(100), FULLTEXT INDEX
fti_col1 (col1) INDEX_DATA_PATH='/index/dat/');
ERROR 1733 (HY000): (GBA-01EX-700) Gbase general error: Empty or invalid
index path