mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-01-08 19:21:40 +09:00
Update for IN query - fix for when argument is column name.
git-svn-id: http://xe-core.googlecode.com/svn/branches/1.5.0@8809 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
parent
bb95345fb2
commit
99b5d718e6
6 changed files with 57 additions and 26 deletions
|
|
@ -17,9 +17,13 @@
|
|||
$this->_value = $argument->getValue();
|
||||
else if(is_a($this->argument, 'Subquery'))
|
||||
$this->_value = $argument->toString();
|
||||
else {
|
||||
if(in_array($operation, array('in', 'not in')))
|
||||
$this->_value = '('. $argument .')';
|
||||
else
|
||||
$this->_value = $argument;
|
||||
}
|
||||
}
|
||||
|
||||
function hasArgument(){
|
||||
return is_a($this->argument, 'Argument');
|
||||
|
|
|
|||
|
|
@ -16,14 +16,20 @@
|
|||
protected function setUp() {
|
||||
$oContext = &Context::getInstance();
|
||||
|
||||
$db_info->db_type = 'cubrid';
|
||||
$db_info->db_port = '33000';
|
||||
$db_info->db_hostname = '10.0.0.206';
|
||||
$db_info->db_userid = 'dba';
|
||||
$db_info->db_password = 'arniarules';
|
||||
$db_info->db_database = 'xe15QA';
|
||||
$db_info->db_table_prefix = 'xe';
|
||||
|
||||
$db_info->master_db = array('db_type' => 'cubrid'
|
||||
,'db_port' => '33000'
|
||||
,'db_hostname' => '10.0.0.206'
|
||||
,'db_userid' => 'dba'
|
||||
,'db_password' => 'arniarules'
|
||||
,'db_database' => 'xe15QA'
|
||||
,'db_table_prefix' => 'xe_');
|
||||
$db_info->slave_db = array(array('db_type' => 'cubrid'
|
||||
,'db_port' => '33000'
|
||||
,'db_hostname' => '10.0.0.206'
|
||||
,'db_userid' => 'dba'
|
||||
,'db_password' => 'arniarules'
|
||||
,'db_database' => 'xe15QA'
|
||||
,'db_table_prefix' => 'xe_'));
|
||||
$oContext->setDbInfo($db_info);
|
||||
|
||||
// remove cache dir
|
||||
|
|
|
|||
|
|
@ -12,8 +12,8 @@
|
|||
protected function setUp() {
|
||||
$oContext = &Context::getInstance();
|
||||
|
||||
$db_info->db_type = 'cubrid';
|
||||
$db_info->db_table_prefix = 'xe';
|
||||
$db_info->master_db = array('db_type' => 'cubrid','db_table_prefix' => 'xe_');
|
||||
$db_info->slave_db = array(array('db_type' => 'cubrid','db_table_prefix' => 'xe_'));
|
||||
|
||||
$oContext->setDbInfo($db_info);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -11,19 +11,25 @@
|
|||
protected $preserveGlobalState = FALSE;
|
||||
|
||||
/**
|
||||
* Prepare runtime context - tell DB class that current DB is CUBRID
|
||||
* Prepare runtime context - tell DB class that current DB is MSSQL
|
||||
*/
|
||||
protected function setUp() {
|
||||
$oContext = &Context::getInstance();
|
||||
|
||||
$db_info->db_type = 'mssql';
|
||||
$db_info->db_port = '3306';
|
||||
$db_info->db_hostname = 'PHENOMII\SQL2008EXPRESS';
|
||||
$db_info->db_userid = 'dba';
|
||||
$db_info->db_password = 'arniarules';
|
||||
$db_info->db_database = 'xe-15-db';
|
||||
$db_info->db_table_prefix = 'xe';
|
||||
|
||||
$db_info->master_db = array('db_type' => 'mssql'
|
||||
,'db_port' => '3306'
|
||||
,'db_hostname' => 'PHENOMII\SQL2008EXPRESS'
|
||||
,'db_userid' => 'dba'
|
||||
,'db_password' => 'arniarules'
|
||||
,'db_database' => 'xe-15-db'
|
||||
,'db_table_prefix' => 'xe_');
|
||||
$db_info->slave_db = array(array('db_type' => 'mssql'
|
||||
,'db_port' => '3306'
|
||||
,'db_hostname' => 'PHENOMII\SQL2008EXPRESS'
|
||||
,'db_userid' => 'dba'
|
||||
,'db_password' => 'arniarules'
|
||||
,'db_database' => 'xe-15-db'
|
||||
,'db_table_prefix' => 'xe_'));
|
||||
$oContext->setDbInfo($db_info);
|
||||
|
||||
// remove cache dir
|
||||
|
|
|
|||
|
|
@ -10,8 +10,8 @@
|
|||
protected function setUp() {
|
||||
$oContext = &Context::getInstance();
|
||||
|
||||
$db_info->db_type = 'mssql';
|
||||
$db_info->db_table_prefix = 'xe';
|
||||
$db_info->master_db = array('db_type' => 'mssql','db_table_prefix' => 'xe_');
|
||||
$db_info->slave_db = array(array('db_type' => 'mssql','db_table_prefix' => 'xe_'));
|
||||
|
||||
$oContext->setDbInfo($db_info);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -342,4 +342,19 @@
|
|||
$this->_test($xml_file, $argsString, $expected);
|
||||
}
|
||||
|
||||
function test_document_getDeclaredList_In_Query(){
|
||||
$xml_file = _XE_PATH_ . "modules/document/queries/getDeclaredList.xml";
|
||||
$argsString = "\$args->list_count = 30;
|
||||
\$args->page_count = 10;
|
||||
\$args->sort_index = 'document_declared.declared_count';
|
||||
\$args->order_type = 'desc';";
|
||||
$expected = 'select * from "xe_documents" as "documents"
|
||||
, "xe_document_declared" as "document_declared"
|
||||
where "documents"."document_srl"
|
||||
in ("document_declared"."document_srl")
|
||||
order by "document_declared"."declared_count" desc
|
||||
limit 0, 30';
|
||||
$this->_test($xml_file, $argsString, $expected);
|
||||
}
|
||||
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue