我有我的查询问题, 我需要从不同的数据库连接两个表 ,现在我的问题是我怎么能执行我的查询。 我得到了我的语法格式从这里
请访问第一此链接,所以你能理解为什么我的SQL语法是这样的
http://www.x-developer.com/php-scripts/sql-connecting-multiple-databases-in-a-single-query
用笨这里林是什么我的查询看起来像一个想法:
请注意,我选择我的列的方式:DATABASE_NAME.TABLE_NAME.COLUMN_NAME
$ENROLLEES = $this->load->database('ENROLLEES', TRUE);
$ACCOUNTS = $this->load->database('ACCOUNTS', TRUE);
$SELECT = "SELECT $ACCOUNTS.BALANCES_TABLE.IDNO, $ACCOUNTS.BALANCES_TABLE.balance";
$FROM = "FROM $ACCOUNTS.BALANCES_TABLE";
$WHERE = "$ACCOUNTS.BALANCES_TABLE.IDNO IN (SELECT $ENROLLEES.ENROLLEES_TABLE.IDNO FROM $ENROLLEES.ENROLLEES_TABLE)";
$SQL = $SELECT ." ". $FROM ." ". $WHERE;
主要问题:如何执行我的查询?
如果我们像这样的笨:
$ENROLLEES->query($SQL); or $ACCOUNTS->query($SQL);
我怎么能执行我的查询有多个数据库即时通讯? 我将要在这里提供
[database]->query($SQL);
?
$query = $this->db->query($SQL);
return $query->result_array();
如果数据库共享服务器,拥有一个具有权限来两个数据库的登录,并简单地有一个查询运行类同:
$query = $this->db->query("
SELECT t1.*, t2.id
FROM `database1`.`table1` AS t1, `database2`.`table2` AS t2
");
否则,我认为你可能必须单独运行2个查询和事后修复的逻辑。
我可以看到@解冻提到的内容:
$ENROLLEES = $this->load->database('ENROLLEES', TRUE);
$ACCOUNTS = $this->load->database('ACCOUNTS', TRUE);
笨支持多种数据库。 你需要保持这两个数据库参考单独的变量如同上面一样。 到目前为止,你是对的/正确的。
接下来,您需要如下使用它们:
$ENROLLEES->query();
$ENROLLEES->result();
和
$ACCOUNTS->query();
$ACCOUNTS->result();
而不是使用
$this->db->query();
$this->db->result();
仅供参考,请参阅本: http://ellislab.com/codeigniter/user-guide/database/connecting.html
http://www.bsourcecode.com/codeigniter/codeigniter-select-query/
$query = $this->db->query("select * from tbl_user");
要么
$query = $this->db->select("*");
$this->db->from('table_name');
$query=$this->db->get();
return $this->db->select('(CASE
enter code hereWHEN orderdetails.ProductID = 0 THEN dealmaster.deal_name
WHEN orderdetails.DealID = 0 THEN products.name
END) as product_name')
$这个 - > DB->选择( 'ID,名称,价格,作者,类别,语言,国际标准书号,出版日期');
$this->db->from('tbl_books');