mysqli - 如何在 yii2 中使用 Create 命令?

标签 mysqli yii2 yii2-advanced-app yii2-basic-app

我想创建一个新表,然后使用创建命令将值插入其中。这是我尝试过的代码

if ( $model->save() )
            {
                $first_val      =   $model->num_start - 1;
                $connection     =   \Yii::$app()->db;
                $transaction    =   $connection->beginTransaction();
                try 
                {
                    $q =  "CREATE TABLE range_{$model->id}( id INT(11) NOT NULL AUTO_INCREMENT,PRIMARY KEY (id) ); " ;      
                    $connection->createCommand($q)->execute(); // new table created
                    $transaction->commit();
                    if ( $model->num_start > 1 )
                    {
                        $r =  "INSERT INTO range_{$model->id}( id ) VALUES ({$first_val});" ;      
                        $connection->createCommand($r)->execute(); // new value inserted
                        $transaction->commit();
                    }

                } 
                catch (Exception $e) 
                {
                    // react on exception   
                    $transaction->rollback();
                } 

                return $this->redirect( [ 'index' ] );
}

当我尝试运行此代码时,出现错误调用未定义的方法 Yii::app() 我如何在 Yii2 中使用 create 命令?

最佳答案

您混合了 yiiyii2:

用途:

\Yii::$app->db; 

而不是

\Yii::$app()->db;

关于mysqli - 如何在 yii2 中使用 Create 命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33316459/

相关文章:

php - 如何更改默认错误消息代码

php - Yii2组合和压缩 Assets 不适用于 bundle

cookies - Yii2 Cookie 未生成

javascript - 当客户端修改两个按钮的 javascript 函数参数相同时,SQL/PHP 会更新多行

php - 无法在屏幕上输出缩略图 我得到一个干净的白色屏幕,左上角有一个小破损的图像

php - Yii2 PDO 语句 Postgres 查询的问题

Yii2 如何将 HTML anchor 标记映射到 yii2 html::a() 标记

yii2 - Yii2将函数应用于所有请求

php - Yii2:是否可以从后端打开前端 session ?

php - 从数据库更新单个图像(在数据库中,多个图像以逗号分隔的方式存储)