summaryrefslogtreecommitdiff
path: root/lib/schema.php
diff options
context:
space:
mode:
authorBrenda Wallace <shiny@cpan.org>2010-01-30 21:22:30 +1300
committerBrenda Wallace <shiny@cpan.org>2010-01-30 21:22:30 +1300
commit22a6e46b45226647b6e7b9bfdc013e59c4a52428 (patch)
tree3a17439b883c8327e2b990a8b9b03abd9b2e2e50 /lib/schema.php
parent870c83c17de9710800163570cdc5321591e73c34 (diff)
removed describeTable from base class, and fixed it up in pgsql
Diffstat (limited to 'lib/schema.php')
-rw-r--r--lib/schema.php60
1 files changed, 0 insertions, 60 deletions
diff --git a/lib/schema.php b/lib/schema.php
index c1636c21d..27a4deda1 100644
--- a/lib/schema.php
+++ b/lib/schema.php
@@ -84,66 +84,6 @@ class Schema
return self::$_single;
}
- /**
- * Returns a TableDef object for the table
- * in the schema with the given name.
- *
- * Throws an exception if the table is not found.
- *
- * @param string $name Name of the table to get
- *
- * @return TableDef tabledef for that table.
- */
-
- public function getTableDef($name)
- {
- if(common_config('db','type') == 'pgsql') {
- $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'");
- }
- else {
- $res = $this->conn->query('DESCRIBE ' . $name);
- }
-
- if (PEAR::isError($res)) {
- throw new Exception($res->getMessage());
- }
-
- $td = new TableDef();
-
- $td->name = $name;
- $td->columns = array();
-
- $row = array();
-
- while ($res->fetchInto($row, DB_FETCHMODE_ASSOC)) {
- //lower case the keys, because the php postgres driver is case insentive for column names
- foreach($row as $k=>$v) {
- $row[strtolower($k)] = $row[$k];
- }
-
- $cd = new ColumnDef();
-
- $cd->name = $row['field'];
-
- $packed = $row['type'];
-
- if (preg_match('/^(\w+)\((\d+)\)$/', $packed, $match)) {
- $cd->type = $match[1];
- $cd->size = $match[2];
- } else {
- $cd->type = $packed;
- }
-
- $cd->nullable = ($row['null'] == 'YES') ? true : false;
- $cd->key = $row['Key'];
- $cd->default = $row['default'];
- $cd->extra = $row['Extra'];
-
- $td->columns[] = $cd;
- }
-
- return $td;
- }
/**
* Gets a ColumnDef object for a single column.