Мне нужна помощь, чтобы понять, как сделать выборку из таблиц в нескольких базах данных с помощью Active Record в Codeigniter.
Подробнее: у меня есть две базы данных; в первом есть таблица с именем пользователей со всей информацией о пользователе (имя, фамилия и т. д.); во второй базе данных есть таблица с именем кредит, в которой есть кредитная информация о каждом пользователе; user_id — это ключ, связывающий таблицы.
В модели контракта у меня есть:
public function __construct()
{
parent::__construct();
$this->rci_db = $this->load->database('dev', TRUE);
}
Запрос для выбора данных:
$this->db->select ("
$this->t_users.user_id,
$this->t_users.username,
$this->t_users.first_name,
$this->t_users.last_name,
$this->t_users.email,
$this->t_users.lastlogin,
$this->t_contributers.user_id AS credit
");
$this->db->from($this->t_users);
$this->db->join($this->rci_db.$this->t_contributers, "$this->t_contributers.user_id = $this->t_users.user_id");
Запрос не работает, и я получаю следующую ошибку:
Error Number: 1146
Table 'gavsit_data.rci_imgcontributers' doesn't exist
SELECT `users`.`user_id`, `users`.`username`, `users`.`first_name`, `users`.`last_name`, `users`.`email`, `users`.`lastlogin`, `rci_imgcontributers`.`user_id` AS `credit` FROM `users` JOIN `rci_imgcontributers` ON `rci_imgcontributers`.`user_id` = `users`.`user_id` ORDER BY `id` ASC
Filename: models/adm/Users_model.php
Большое спасибо за любую подсказку... Я действительно не знаю, как решить эту проблему.
РЕДАКТИРОВАТЬ:
Я отредактировал код, разделяющий запрос выбора, ошибка исчезла, но я не получил данных из второй БД:
$this->db->select ("
$this->t_users.id,
$this->t_users.username,
$this->t_users.first_name,
$this->t_users.last_name,
$this->t_users.email,
$this->t_users.last_login,
$this->t_users.active
");
$this->rci_db->select("
$this->t_contributers.user_id,
$this->t_contributers.cbtid
");
$this->db->from($this->t_users);
$this->rci_db->join("$this->t_contributers", "$this->t_contributers.user_id = $this->db.$this->t_users.id", 'left');
Подробнее здесь: https://stackoverflow.com/questions/483 ... -databases