繁体   English   中英

yii2 - 如何从控制台截断表

[英]yii2 - how to truncate a table from console

我创建了一个控制台命令,我需要截断一个表。

阅读课程参考: http//www.yiiframework.com/doc-2.0/yii-db-command.html#truncateTable()-detail我无法理解为了执行此命令我需要包含哪些文件。

我包括:

use yii\db\Command;
use yii\db\Connection;

但不确定哪一个是正确的。

我试图执行:

$command = Yii::$app->db->truncateTable('user');

这给了我以下错误:

消息'调用未知方法:yii \\ db \\ Connection :: truncateTable()'的异常'yii \\ base \\ UnknownMethodException'

和:

Yii::$connection->createCommand()->truncateTable('user');

这给了我以下错误:

PHP致命错误'yii \\ base \\ ErrorException',带有消息'访问未声明的静态属性:Yii :: $ connection'

我真的不明白我需要做什么。

Yii::$app->db->createCommand()->truncateTable('user')->execute();

使用yii2迁移该默认函数

yii2迁移

步骤1.创建迁移

yii migrate/create truncate_table_xxx

第2步。 编辑文件xxx_truncate_table_xxx

有点像这样

class m150101_185401_truncate_table_xxx extends Migration
{
   $this->dropTable('xxx')
}

或者,可以使用:

User::deleteAll();

假设User是活动模型类。 此命令显示已删除记录的数量。

注意,与truncate删除所有记录不同,不会将autoincrement counter重置为1

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM