截断 CakePHP 3.X table 并重置自动增量 ID
Tuncate CakePHP 3.X table and reset Auto Incremented id
在旧的cakePHP中2.X我使用了这个语句:
$this->Products->query('TRUNCATE TABLE products;');
这是我可以将我的 ID 重置为 1 的唯一方法。现在在 cakephp 3.X 中,这似乎根本不会截断 table。
我试过:
deleteAll();
哪个有效,但似乎总是需要一个条件,但最重要的是不会重置 ID;
query()->delete()->execute();
删除所有内容但不重置 ID。
有谁知道如何在 Cakephp 3.2
中完成此操作
在 CakePHP3 中执行任意查询的方式是:
$connection = \Cake\Datasource\ConnectionManager::get('default');
$connection->execute('TRUNCATE TABLE products');
http://book.cakephp.org/3.0/en/orm/database-basics.html#database-basics
在控制器中包含 "ConnectionManager" 命名空间
use Cake\Datasource\ConnectionManager;
创建连接字符串并在您的操作中执行查询
$connection = ConnectionManager::get('default');
$results = $connection->execute('TRUNCATE TABLE tableName');
在旧的cakePHP中2.X我使用了这个语句:
$this->Products->query('TRUNCATE TABLE products;');
这是我可以将我的 ID 重置为 1 的唯一方法。现在在 cakephp 3.X 中,这似乎根本不会截断 table。
我试过:
deleteAll();
哪个有效,但似乎总是需要一个条件,但最重要的是不会重置 ID;
query()->delete()->execute();
删除所有内容但不重置 ID。
有谁知道如何在 Cakephp 3.2
中完成此操作在 CakePHP3 中执行任意查询的方式是:
$connection = \Cake\Datasource\ConnectionManager::get('default');
$connection->execute('TRUNCATE TABLE products');
http://book.cakephp.org/3.0/en/orm/database-basics.html#database-basics
在控制器中包含 "ConnectionManager" 命名空间
use Cake\Datasource\ConnectionManager;
创建连接字符串并在您的操作中执行查询
$connection = ConnectionManager::get('default');
$results = $connection->execute('TRUNCATE TABLE tableName');