MySQL FULLTEXT INDEX 是否支持 JSON 类型列?

问题描述

我使用的是 MysqL 8 到 Laravel 7。我有一列像 $table->json('column_name')->nullable();

因此,当我尝试将 FULLTEXT INDEX 添加到该列时,例如 DB::statement('ALTER TABLE table_name ADD FULLTEXT column_name_fulltext_index (column_name)');

我得到了类似的错误

In Connection.PHP line 671:
sqlSTATE[42000]: Syntax error or access violation: 3152 JSON column 'column_name' supports indexing only via generated columns on a specified JSON path. (sql: ALTER TABLE table_name ADD FULLTEXT column_name_fulltext_index (column_name))
In Exception.PHP line 18:
sqlSTATE[42000]: Syntax error or access violation: 3152 JSON column 'column_name' supports indexing only via generated columns on a specified JSON path.
In PDOStatement.PHP line 115:
sqlSTATE[42000]: Syntax error or access violation: 3152 JSON column 'column_name' supports indexing only via generated columns on a specified JSON path.

有谁知道是什么问题?我们不能对 JSON 类型的列使用 FULLTEXT INDEX 吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)