Author: randall
Date: 2006-02-16 10:14:42 -0700 (Thu, 16 Feb 2006)
New Revision: 1604
Modified:
SQLObject/branches/0.7-bugfix/sqlobject/postgres/pgconnection.py
Log:
Added support for schema when checking if table exits.
Modified: SQLObject/branches/0.7-bugfix/sqlobject/postgres/pgconnection.py
===================================================================
--- SQLObject/branches/0.7-bugfix/sqlobject/postgres/pgconnection.py 2006-02-16 16:53:41 UTC (rev 1603)
+++ SQLObject/branches/0.7-bugfix/sqlobject/postgres/pgconnection.py 2006-02-16 17:14:42 UTC (rev 1604)
@@ -157,8 +157,19 @@
return 'INT NOT NULL'
def tableExists(self, tableName):
- result = self.queryOne("SELECT COUNT(relname) FROM pg_class WHERE relname = %s"
- % self.sqlrepr(tableName))
+ if '.' in tableName and self.server_version[:3] >= "7.4":
+ (table_schema, table_name) = tableName.split('.')
+ query = """
+ SELECT COUNT(*) FROM information_schema.tables
+ WHERE table_schema = %s
+ AND table_name = %s
+ """ % (self.sqlrepr(table_schema), self.sqlrepr(table_name))
+ else:
+ query = """
+ SELECT COUNT(relname) FROM pg_class
+ WHERE relname = %s
+ """ % self.sqlrepr(tableName)
+ result = self.queryOne(query)
return result[0]
def addColumn(self, tableName, column):
|