Здравствуйте.
При подключении к базе данных через Yii2 выдает даную ошибку:
SQLSTATE[HY000]: General error
The SQL being executed was: SELECT
kcu.constraint_name,
kcu.column_name,
kcu.referenced_table_name,
kcu.referenced_column_name
FROM information_schema.referential_constraints AS rc
JOIN information_schema.key_column_usage AS kcu ON
(
kcu.constraint_catalog = rc.constraint_catalog OR
(kcu.constraint_catalog IS NULL AND rc.constraint_catalog IS NULL)
) AND
kcu.constraint_schema = rc.constraint_schema AND
kcu.constraint_name = rc.constraint_name
WHERE rc.constraint_schema = database() AND kcu.table_schema = database()
AND rc.table_name = 'Posts' AND kcu.table_name = 'Posts'
В файле подключения фреймворка db.php :
return [
'class' => 'yii\db\Connection',
'dsn' => 'mysql:host=mysql.zzz.com.ua;dbname=<dbname>',
'username' => '<username>',
'password' => '<password>',
'charset' => 'utf8',
];
<dbname>, <username>, <password> введены верно.
Таблица Posts единственна в базе данных
Запрос к базе данных:
$Posts = Posts::find()->all();
return $this->render('index', compact('Posts'));
Вывод:
var_dump($Posts);
Модель:
namespace app\models;
use yii\db\ActiveRecord;
class Posts extends ActiveRecord {
public static function tableName(){
return 'Posts';
}
}
При добавлении port=3306 в строку 'dsn' => 'mysql:host=mysql.zzz.com.ua;dbname=<dbname>', после: "...mysql.zzz.com.ua;..." ошибка не исчезает.
Заранее спасибо.
Yii2 ошибка подключения к базе данных
Yii2 ошибка подключения к базе данных
А у Вас точно есть такие строки в таблице kcu как constraint_name, column_name, referenced_table_name и тд?
Проверьте правильность запроса в БД и исправьте ошибки.
Также, зачем вы делаете запрос в information_schema? Доступ к этой базе для пользователей закрыт. Вижу ошибку в "controllers/PostController.php at line 13".
Проверьте правильность запроса в БД и исправьте ошибки.
Также, зачем вы делаете запрос в information_schema? Доступ к этой базе для пользователей закрыт. Вижу ошибку в "controllers/PostController.php at line 13".
Yii2 ошибка подключения к базе данных
Нет, нету. В этом и ошибка, при выборке всего содержимого таблицы "Posts" выводит вышеуказанное.butalex писал(а):А у Вас точно есть такие строки в таблице kcu как constraint_name, column_name, referenced_table_name и тд?
Если у Вас есть возможность подсказать, как правильно сделать запрос, я буду очень благодарен Вам.butalex писал(а):Проверьте правильность запроса в БД и исправьте ошибки.
Запрос д БД имеет такой вид "$post = Posts::find()->all(); return $this->render('index', compact('post'));", а вывод такой "var_dump($post);" в моделе, указаной в моем посте выше, указана таблица к которой идет обращение и это единственная таблица в БД.butalex писал(а):Также, зачем вы делаете запрос в information_schema? Доступ к этой базе для пользователей закрыт. Вижу ошибку в "controllers/PostController.php at line 13".
Yii2 ошибка подключения к базе данных
Как я понимаю, что всё хорошо уже?
http://ztvs.zzz.com.ua/web/

Yii2 ошибка подключения к базе данных
Нет. Все еще ошибки есть. Откатил все изменения по ЧПУ до первоначальных дабы попасть в requirements.phpbutalex писал(а):Как я понимаю, что всё хорошо уже?http://ztvs.zzz.com.ua/web/
Там проблемы с PDO PostgreSQL extension - Warning.
Дальше не знаю куда идти и что исправлять.
Yii2 ошибка подключения к базе данных
Пожалуйста, скриншоты! Я, увы, не умею определять ошибку по Вашим мыслям... Мне нужно видить где появляется ошибка, желательно на прямую адрес к странице, где появляется ошибка.