Yii 2迁移中的FULLTEXT索引

3

如何使用Yii 2迁移为字段添加FULLTEXT索引?

没有createFulltextIndexcreateUniqueIndex方法。Class yii\db\Migration文档

如何使用Yii 2迁移解决这个问题?

2个回答

10

FULLTEXT不被支持是因为它是特定于模式的。
不过你仍然可以使用原始SQL。

MySQL示例:

$this->execute("ALTER TABLE table_name ADD FULLTEXT INDEX index_name (column_name ASC)");

谢谢!非常整洁! - Zlatan Omerović

2
如果在http://www.yiiframework.com/doc-2.0/yii-db-migration.html类中没有映射某些SQL命令,您可以使用普通的createCommand来执行SQL。
例如,如果您想要创建一个选择表,您可以使用以下命令:
$sql =" select * from my_table ";

$command = Yii::$app->
         db->createCommand("CREATE UNIQUE INDEX NOT EXISTS MY_NEW_TABLE AS " . $sql);
$command->execute(); 

所以在您的情况下,您可以执行“alter table”命令来添加全文索引。
 $command = Yii::$app->
         db->createCommand("ALTER TABLE your_table ADD FULLTEXT INDEX `FullText` (`col1`, `col2` ););"

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接