sql >> データベース >  >> RDS >> Mysql

CodeIgniterでMSSQLとMySQLを使用する

    次の例のように、dbconfigをapplication/ config/database.phpに配置できます。

    $active_group = "default";
    $active_record = TRUE;
    
    /*MYSQL DB config EXMPALE */
    $db['default']['hostname'] = 'localhost';
    $db['default']['username'] = 'username';
    $db['default']['password'] = 'pass';
    $db['default']['database'] = 'DATABASE_NAME';
    $db['default']['dbdriver'] = 'mysqli';
    //...
    
    
    /* MSSQL DB config EXMPALE, note the first param my_mssql */
    
    $db['my_mssql']['hostname'] = 'SQL SERVER IP';
    $db['my_mssql']['username'] = 'username';
    $db['my_mssql']['password'] = 'pass';
    $db['my_mssql']['database'] = 'DATABASE_NAME';
    $db['my_mssql']['dbdriver'] = 'mssql';
    //...
    

    デフォルトのグループをmysqlにしたので、$ this-> db-> ..を呼び出すと、デフォルトのグループdbが使用されることに注意してください。

    別の接続を使用したクエリの場合。 MSSQLモデルにこのようなものを追加します

    class example_model extends CI_Model
    {
        var $mssql;
        function __construct()
        {
            parent::__construct();
            $this->mssql = $this->load->database ( 'my_mssql', TRUE );
        }
    
        function get_some_mssql_rows(){
           //use $this->mssql instead of $this->db
           $query = $this->mssql->query('select * from mssql_table');
           //...
        }
    
        function get_some_mysql_rows(){
           //use  $this->db for default 
           $query = $this->db->query('select * from mysql_table');
           //...
        }
    }
    

    この方法は、たとえばレプリカの読み取りなど、多くのdbs接続に使用できます



    1. Mysqlユーザー作成スクリプト

    2. さまざまなトーナメント/競技タイプ(リーグ、ラダー、シングル/ダブルエリミネーションなど)のデータ構造

    3. Laravelでカウントがゼロの場合にレコードを取得する方法

    4. MySQLテーブルからランダムな行を1つ選択する際の問題