From c4ee2b20bee567e1c41888bb46bfc8d5f98e8951 Mon Sep 17 00:00:00 2001 From: Brenda Wallace Date: Wed, 10 Mar 2010 21:25:44 +1300 Subject: [PATCH] throw an error that looks like mysql errors.. :-S --- lib/pgsqlschema.php | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/lib/pgsqlschema.php b/lib/pgsqlschema.php index 91bc09667c..a4ebafae4b 100644 --- a/lib/pgsqlschema.php +++ b/lib/pgsqlschema.php @@ -1,3 +1,4 @@ + conn->query("select *, column_default as default, is_nullable as Null, udt_name as Type, column_name AS Field from INFORMATION_SCHEMA.COLUMNS where table_name = '$name'"); + $res = $this->conn->query("SELECT *, column_default as default, is_nullable as Null, + udt_name as Type, column_name AS Field from INFORMATION_SCHEMA.COLUMNS where table_name = '$name'"); if (PEAR::isError($res)) { throw new Exception($res->getMessage()); @@ -72,6 +74,9 @@ class PgsqlSchema extends Schema $td->name = $name; $td->columns = array(); + if ($res->numRows() == 0 ) { + throw new Exception('no such table'); //pretend to be the msyql error. yeah, this sucks. + } $row = array(); while ($res->fetchInto($row, DB_FETCHMODE_ASSOC)) { @@ -359,6 +364,7 @@ class PgsqlSchema extends Schema try { $td = $this->getTableDef($tableName); + } catch (Exception $e) { if (preg_match('/no such table/', $e->getMessage())) { return $this->createTable($tableName, $columns); -- 2.39.5