Ошибка установки модуля управления пользователями YII - общая ошибка: 2014 - PullRequest
0 голосов
/ 13 ноября 2011

Пытался установить этот модуль в течение последних 2 дней. Это выдает ошибку

CDbCommand failed to execute the SQL statement: SQLSTATE[HY000]: General error: 2014     Cannot execute queries while other unbuffered queries are active. Consider using PDOStatement::fetchAll(). Alternatively, if your code is only ever going to run against mysql, you may enable query buffering by setting the PDO::MYSQL_ATTR_USE_BUFFERED_QUERY attribute.. The SQL statement executed was: CREATE TABLE IF NOT EXISTS `user_group` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`owner_id` int(11) NOT NULL,
`participants` text NULL,
`title` varchar(255) NOT NULL,
`description` text NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

В этих строках кодов файла: \ protected \ modules \ user \ controllers \ YumInstallController.php (134): CDbCommand-> execute ()

if (isset($_POST['installUsergroup'])) {
                    $sql = "CREATE TABLE IF NOT EXISTS `" .   $usergroupTable . "` (
                        `id` int(11) NOT NULL AUTO_INCREMENT,
                        `owner_id` int(11) NOT NULL,
                        `participants` text NULL,
                        `title` varchar(255) NOT NULL,
                        `description` text NOT NULL,
                        PRIMARY KEY (`id`)
                            ) ENGINE=InnoDB DEFAULT CHARSET=utf8;";

                    $db->createCommand($sql)->execute(); //throws exception on this line. 
                    $createdTables['usergroup']['usergroupTable'] = $usergroupTable;

Я пытался использовать строку кода

$db->setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, true);

перед запуском запросов. Посмотрели вокруг, но сказанные решения не работают для меня. Я что-то здесь упускаю? Любая помощь здесь будет оценена.

1 Ответ

1 голос
/ 22 июля 2012

Я решил это, комментируя следующие строки в YumInstallController.PHP (конечно, я не планирую использовать переводы)

// Insert the translation strings that come with yum
//$sql = file_get_contents(Yii::getPathOfAlias(
//                           'application.modules.user.docs') . '/yum_translation.sql');
//$db->createCommand($sql)->execute(); 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...