Справка по генерации запросов при подключении к нескольким базам данных (codeigniter php) - PullRequest
0 голосов
/ 10 мая 2011

Assalamualaykum:)

У меня проблемы, когда я хочу сгенерировать запрос в codeigniter, вот код:

class Pengadilan_negeri extends CI_Controller {

    private function get_database_configuration($database_name) {
        $configuration = array(
            'hostname' => "DREAMBENDER\PENGADILANNEGERI",
            'username' => "sa",
            'password' => "12111993",
            'dbdriver' => "mssql"
        );

        $database_configuration = NULL;

        if ($database_name == "pidana") {
            $database_configuration = $configuration + array('database' => "dataPidana");
        } else if ($database_name == "perdata") {
            $database_configuration = $configuration + array('database' => "dataPerdata");
        }

        return $database_configuration;
    }

    public function biasa() {

        $DB1 = $this->load->database($this->get_database_configuration("pidana"), TRUE);
        $DB2 = $this->load->database($this->get_database_configuration("perdata"), TRUE);

        $DB1->query("SELECT * FROM dbo.DATA_REGISTER");

        foreach ($DB1->result() as $row) {
            print_r($row);
        }
    }
}

и выдается несколько ошибок, например:1006 *

Fatal error: Call to undefined method CI_DB_mssql_driver::result() in E:\xampp\htdocs\pengadilan_negeri\application\controllers\register_perkara\perkara_pidana.php on line 33

что я должен сделать, чтобы этот код работал без ошибок?

Ответы [ 2 ]

1 голос
/ 28 октября 2013

если вы используете MSSQL, пожалуйста, используйте порт в вашей конфигурации db следующим образом: 'port' => "1433", 1433 - это порт по умолчанию

0 голосов
/ 10 мая 2011

в вашей функции biasa() измените ваш запрос следующим образом.

public function biasa() {

    $DB1 = $this->load->database($this->get_database_configuration("pidana"), TRUE);
    $DB2 = $this->load->database($this->get_database_configuration("perdata"), TRUE);

    // execute the query and store it
    $query_db1 = $DB1->query("SELECT * FROM dbo.DATA_REGISTER");

    // call ->result() on the executed query to retrieve the results
    foreach ($query_db1->result() as $row) {
        print_r($row);
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...