summaryrefslogtreecommitdiffstats
path: root/codebase
diff options
context:
space:
mode:
authorStanislau <stanislau.wolski@gmail.com>2011-11-01 12:13:45 +0200
committerStanislau <stanislau.wolski@gmail.com>2011-11-01 12:13:45 +0200
commite2a32975034304e211ca772f9cf83bcbc0a7aed4 (patch)
tree26c0c0127c3efb8df1fac8571b30b593e7de71ae /codebase
parent8683dc68b9c2b4309bf455dbdd388ab34c67c843 (diff)
downloadconnector-php-e2a32975034304e211ca772f9cf83bcbc0a7aed4.zip
connector-php-e2a32975034304e211ca772f9cf83bcbc0a7aed4.tar.gz
connector-php-e2a32975034304e211ca772f9cf83bcbc0a7aed4.tar.bz2
[fix] incorrect UNION processing for non-mysql db types
Diffstat (limited to 'codebase')
-rw-r--r--codebase/db_mssql.php3
-rw-r--r--codebase/db_oracle.php3
-rw-r--r--codebase/db_pdo.php8
-rw-r--r--codebase/db_postgre.php3
-rw-r--r--codebase/db_sasql.php3
-rw-r--r--codebase/db_sqlsrv.php3
6 files changed, 22 insertions, 1 deletions
diff --git a/codebase/db_mssql.php b/codebase/db_mssql.php
index e082c03..0bbcf63 100644
--- a/codebase/db_mssql.php
+++ b/codebase/db_mssql.php
@@ -43,6 +43,9 @@ class MsSQLDBDataWrapper extends DBDataWrapper{
}
protected function select_query($select,$from,$where,$sort,$start,$count){
+ if (!$from)
+ return $select;
+
$sql="SELECT " ;
if ($count)
$sql.=" TOP ".($count+$start);
diff --git a/codebase/db_oracle.php b/codebase/db_oracle.php
index 5dcbd71..210af43 100644
--- a/codebase/db_oracle.php
+++ b/codebase/db_oracle.php
@@ -58,6 +58,9 @@ class OracleDBDataWrapper extends DBDataWrapper{
}
protected function select_query($select,$from,$where,$sort,$start,$count){
+ if (!$from)
+ return $select;
+
$sql="SELECT ".$select." FROM ".$from;
if ($where) $sql.=" WHERE ".$where;
if ($sort) $sql.=" ORDER BY ".$sort;
diff --git a/codebase/db_pdo.php b/codebase/db_pdo.php
index 281b23d..c008adb 100644
--- a/codebase/db_pdo.php
+++ b/codebase/db_pdo.php
@@ -15,12 +15,18 @@ class PDODBDataWrapper extends DBDataWrapper{
LogMaster::log($sql);
$res=$this->connection->query($sql);
- if ($res===false) throw new Exception("PDO - sql execution failed\n".$this->connection->errorInfo());
+ if ($res===false) {
+ $message = $this->connection->errorInfo();
+ throw new Exception("PDO - sql execution failed\n".$message[2]);
+ }
return new PDOResultSet($res);
}
protected function select_query($select,$from,$where,$sort,$start,$count){
+ if (!$from)
+ return $select;
+
$sql="SELECT ".$select." FROM ".$from;
if ($where) $sql.=" WHERE ".$where;
if ($sort) $sql.=" ORDER BY ".$sort;
diff --git a/codebase/db_postgre.php b/codebase/db_postgre.php
index f944714..011bd47 100644
--- a/codebase/db_postgre.php
+++ b/codebase/db_postgre.php
@@ -17,6 +17,9 @@ class PostgreDBDataWrapper extends DBDataWrapper{
}
protected function select_query($select,$from,$where,$sort,$start,$count){
+ if (!$from)
+ return $select;
+
$sql="SELECT ".$select." FROM ".$from;
if ($where) $sql.=" WHERE ".$where;
if ($sort) $sql.=" ORDER BY ".$sort;
diff --git a/codebase/db_sasql.php b/codebase/db_sasql.php
index f8eed78..85959df 100644
--- a/codebase/db_sasql.php
+++ b/codebase/db_sasql.php
@@ -31,6 +31,9 @@ class SaSQLDBDataWrapper extends DBDataWrapper{
}
protected function select_query($select,$from,$where,$sort,$start,$count){
+ if (!$from)
+ return $select;
+
$sql="SELECT " ;
if ($count)
$sql.=" TOP ".($count+$start);
diff --git a/codebase/db_sqlsrv.php b/codebase/db_sqlsrv.php
index 1dfd4ef..e5212ff 100644
--- a/codebase/db_sqlsrv.php
+++ b/codebase/db_sqlsrv.php
@@ -53,6 +53,9 @@ class SQLSrvDBDataWrapper extends DBDataWrapper{
}
protected function select_query($select,$from,$where,$sort,$start,$count){
+ if (!$from)
+ return $select;
+
$sql="SELECT " ;
if ($count)
$sql.=" TOP ".($count+$start);