sql >> Databáze >  >> RDS >> Mysql

Dynamické připojení k databázi Codeigniter

Všechny informace o databázi byste měli poskytnout v application/config/database.php´

Normálně byste nastavili výchozí skupinu databází takto:

$db['default']['hostname'] = "localhost";
$db['default']['username'] = "root";
$db['default']['password'] = "";
$db['default']['database'] = "database_name";
$db['default']['dbdriver'] = "mysql";
$db['default']['dbprefix'] = "";
$db['default']['pconnect'] = TRUE;
$db['default']['db_debug'] = FALSE;
$db['default']['cache_on'] = FALSE;
$db['default']['cachedir'] = "";
$db['default']['char_set'] = "utf8";
$db['default']['dbcollat'] = "utf8_general_ci";
$db['default']['swap_pre'] = "";
$db['default']['autoinit'] = TRUE;
$db['default']['stricton'] = FALSE;

Všimněte si, že přihlašovací údaje a nastavení jsou uvedeny v poli s názvem $db['default'] .

Poté můžete přidat další databázi do nového pole – nazvěme ji 'anotherdb'.

$db['anotherdb']['hostname'] = "localhost";
$db['anotherdb']['username'] = "root";
$db['anotherdb']['password'] = "";
$db['anotherdb']['database'] = "another_database_name";
$db['anotherdb']['dbdriver'] = "mysql";
$db['anotherdb']['dbprefix'] = "";
$db['anotherdb']['pconnect'] = TRUE;
$db['anotherdb']['db_debug'] = FALSE;
$db['anotherdb']['cache_on'] = FALSE;
$db['anotherdb']['cachedir'] = "";
$db['anotherdb']['char_set'] = "utf8";
$db['anotherdb']['dbcollat'] = "utf8_general_ci";
$db['anotherdb']['swap_pre'] = "";
$db['anotherdb']['autoinit'] = TRUE;
$db['anotherdb']['stricton'] = FALSE;

Nyní, pokud chcete použít druhou databázi, stačí jít

$DB_another = $this->load->database('anotherdb', TRUE); 

a potom místo $this->db->foo() , budete $DB_another->foo()

a můžete to rozšířit na více skupin, jako je tato

 $DB2 = $this->load->database('anotherdb1', TRUE); 
 $DB3 = $this->load->database('anotherdb2', TRUE); 

Podrobnosti naleznete zde:http://ellislab.com/codeigniter/ user-guide/database/connecting.html



  1. Jak vložit řetězec, který obsahuje &

  2. Jak povolím, aby parametr rozevíracího seznamu v SSRS měl výchozí hodnotu -- All -- ?

  3. Jak mohu vstoupit do SQL Server uloženého procesu z mého kódu C#?

  4. Použití vzorů pracovních postupů ke správě stavu libovolné entity