[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
gnue/gnue-common/src/dbdrivers cxoracle/DBdrive...
From: |
Jason Cater |
Subject: |
gnue/gnue-common/src/dbdrivers cxoracle/DBdrive... |
Date: |
Thu, 08 Nov 2001 02:55:52 -0500 |
CVSROOT: /home/cvs
Module name: gnue
Changes by: Jason Cater <address@hidden> 01/11/08 02:55:52
Modified files:
gnue-common/src/dbdrivers/cxoracle: DBdriver.py
gnue-common/src/dbdrivers/oracle: DBdriver.py
gnue-common/src/dbdrivers/popy: DBdriver.py
gnue-common/src/dbdrivers/postgresql: DBdriver.py
gnue-common/src/dbdrivers/psycopg: DBdriver.py
gnue-common/src/dbdrivers/pypgsql: DBdriver.py
gnue-common/src/dbdrivers/sybase: DBdriver.py
Log message:
partially implemented support for dbdriver trigger extensions
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-common/src/dbdrivers/cxoracle/DBdriver.py.diff?cvsroot=OldCVS&tr1=1.4&tr2=1.5&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-common/src/dbdrivers/oracle/DBdriver.py.diff?cvsroot=OldCVS&tr1=1.10&tr2=1.11&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-common/src/dbdrivers/popy/DBdriver.py.diff?cvsroot=OldCVS&tr1=1.4&tr2=1.5&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-common/src/dbdrivers/postgresql/DBdriver.py.diff?cvsroot=OldCVS&tr1=1.22&tr2=1.23&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-common/src/dbdrivers/psycopg/DBdriver.py.diff?cvsroot=OldCVS&tr1=1.4&tr2=1.5&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-common/src/dbdrivers/pypgsql/DBdriver.py.diff?cvsroot=OldCVS&tr1=1.6&tr2=1.7&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-common/src/dbdrivers/sybase/DBdriver.py.diff?cvsroot=OldCVS&tr1=1.3&tr2=1.4&r1=text&r2=text
Patches:
Index: gnue/gnue-common/src/dbdrivers/cxoracle/DBdriver.py
diff -u gnue/gnue-common/src/dbdrivers/cxoracle/DBdriver.py:1.4
gnue/gnue-common/src/dbdrivers/cxoracle/DBdriver.py:1.5
--- gnue/gnue-common/src/dbdrivers/cxoracle/DBdriver.py:1.4 Tue Nov 6
16:57:41 2001
+++ gnue/gnue-common/src/dbdrivers/cxoracle/DBdriver.py Thu Nov 8 02:55:52 2001
@@ -19,7 +19,7 @@
# Copyright 2000, 2001 Free Software Foundation
#
# FILE:
-# DBdriver.py
+# cxoracle/DBdriver.py
#
# DESCRIPTION:
# Driver to provide access to data via Computronix's Oracle/Python Driver
@@ -204,62 +204,80 @@
DBSIG_DataObject_Object.__init__(self)
Oracle_DataObject.__init__(self)
- def _buildQuery(self, conditions={}):
+ def _buildQuery(self, conditions={}):
return DBSIG_DataObject_Object._buildQuery(self, conditions)
class Oracle_DataObject_SQL(Oracle_DataObject, \
- DBSIG_DataObject_SQL):
- def __init__(self):
- # Call DBSIG init first because Oracle_DataObject needs to overwrite
+ DBSIG_DataObject_SQL):
+ def __init__(self):
+ # Call DBSIG init first because Oracle_DataObject needs to overwrite
# some of its values
- DBSIG_DataObject_SQL.__init__(self)
+ DBSIG_DataObject_SQL.__init__(self)
Oracle_DataObject.__init__(self)
- def _buildQuery(self, conditions={}):
+ def _buildQuery(self, conditions={}):
return DBSIG_DataObject_SQL._buildQuery(self, conditions)
#
# Extensions to Trigger Namespaces
-#
-class TriggerExtensions:
+#
+class TriggerExtensions:
- def __init__(self, connection):
+ def __init__(self, connection):
self.__connection = connection
# Return the current date, according to database
- def getDate(self):
+ def getTimeStamp(self):
+ return self.__singleQuery("select sysdate from dual")
+
+ # Return a sequence number from sequence 'name'
+ def getSequence(self, name):
+ return self.__singleQuery("select %s.nextval from dual" % name)
+
+ # Run the SQL statement 'statement'
+ def sql(self, statement):
cursor = self.__connection.cursor()
- command = "select sysdate from dual"
- cursor.execute(command)
- return cursor.fetchone()[0]
+ try:
+ cursor.execute(statement)
+ cursor.close()
+ except:
+ cursor.close()
+ raise
- # Return a sequence number from sequence 'name'
- def getSequence(self, name):
+ # Used internally
+ def __singleQuery(self, statement):
cursor = self.__connection.cursor()
- command = "select %s.nextval from dual" % name
- cursor.execute(command)
- return cursor.fetchone()[0]
+ try:
+ cursor.execute(statement)
+ rv = cursor.fetchone()
+ cursor.close()
+ except mesg:
+ GDebug.printMesg(1,"**** Unable to execute extension query")
+ GDebug.printMesg(1,"**** %s" % mesg)
+ cursor.close()
+ return None
- # Run the SQL statement 'statement'
- def sql(self, statement):
- self.__connection.cursor().execute(statement)
+ try:
+ return rv[0]
+ except:
+ return None
######################################
#
-# The following hashes describe
+# The following hashes describe
# this driver's characteristings.
#
######################################
#
# All datasouce "types" and corresponding DataObject class
-#
-supportedDataObjects = {
+#
+supportedDataObjects = {
'object': Oracle_DataObject_Object,
'sql': Oracle_DataObject_SQL
}
Index: gnue/gnue-common/src/dbdrivers/oracle/DBdriver.py
diff -u gnue/gnue-common/src/dbdrivers/oracle/DBdriver.py:1.10
gnue/gnue-common/src/dbdrivers/oracle/DBdriver.py:1.11
--- gnue/gnue-common/src/dbdrivers/oracle/DBdriver.py:1.10 Tue Nov 6
16:57:41 2001
+++ gnue/gnue-common/src/dbdrivers/oracle/DBdriver.py Thu Nov 8 02:55:52 2001
@@ -216,50 +216,68 @@
DBSIG_DataObject_SQL.__init__(self)
Oracle_DataObject.__init__(self)
- def _buildQuery(self, conditions={}):
+ def _buildQuery(self, conditions={}):
return DBSIG_DataObject_SQL._buildQuery(self, conditions)
#
# Extensions to Trigger Namespaces
-#
-class TriggerExtensions:
+#
+class TriggerExtensions:
- def __init__(self, connection):
+ def __init__(self, connection):
self.__connection = connection
# Return the current date, according to database
- def getDate(self):
- cursor = self.__connection.cursor()
- command = "select sysdate from dual"
- cursor.execute(command)
- return cursor.fetchone()[0]
+ def getTimeStamp(self):
+ return self.__singleQuery("select sysdate from dual")
- # Return a sequence number from sequence 'name'
- def getSequence(self, name):
- cursor = self.__connection.cursor()
- command = "select %s.nextval from dual" % name
- cursor.execute(command)
- return cursor.fetchone()[0]
+ # Return a sequence number from sequence 'name'
+ def getSequence(self, name):
+ return self.__singleQuery("select %s.nextval from dual" % name)
# Run the SQL statement 'statement'
- def sql(self, statement):
- self.__connection.cursor().execute(statement)
+ def sql(self, statement):
+ cursor = self.__connection.cursor()
+ try:
+ cursor.execute(statement)
+ cursor.close()
+ except:
+ cursor.close()
+ raise
+ # Used internally
+ def __singleQuery(self, statement):
+ cursor = self.__connection.cursor()
+ try:
+ cursor.execute(statement)
+ rv = cursor.fetchone()
+ cursor.close()
+ except mesg:
+ GDebug.printMesg(1,"**** Unable to execute extension query")
+ GDebug.printMesg(1,"**** %s" % mesg)
+ cursor.close()
+ return None
+
+ try:
+ return rv[0]
+ except:
+ return None
+
######################################
#
-# The following hashes describe
+# The following hashes describe
# this driver's characteristings.
#
######################################
#
# All datasouce "types" and corresponding DataObject class
-#
-supportedDataObjects = {
+#
+supportedDataObjects = {
'object': Oracle_DataObject_Object,
'sql': Oracle_DataObject_SQL
}
Index: gnue/gnue-common/src/dbdrivers/popy/DBdriver.py
diff -u gnue/gnue-common/src/dbdrivers/popy/DBdriver.py:1.4
gnue/gnue-common/src/dbdrivers/popy/DBdriver.py:1.5
--- gnue/gnue-common/src/dbdrivers/popy/DBdriver.py:1.4 Tue Nov 6 14:41:10 2001
+++ gnue/gnue-common/src/dbdrivers/popy/DBdriver.py Thu Nov 8 02:55:52 2001
@@ -179,46 +179,70 @@
def __init__(self):
# Call DBSIG init first because PG_DataObject needs to overwrite
# some of its values
- DBSIG_DataObject_SQL.__init__(self)
+ DBSIG_DataObject_SQL.__init__(self)
PG_DataObject.__init__(self)
- def _buildQuery(self, conditions={}):
+ def _buildQuery(self, conditions={}):
return DBSIG_DataObject_SQL._buildQuery(self, conditions)
#
# Extensions to Trigger Namespaces
-#
-class TriggerExtensions:
+#
+class TriggerExtensions:
- def __init__(self, connection):
+ def __init__(self, connection):
self.__connection = connection
# Return the current date, according to database
-# def getDate(self):
-# pass
+ def getTimeStamp(self):
+ return self.__singleQuery("select current_timestamp")
- # Return a sequence number from sequence 'name'
-# def getSequence(self, name):
-# pass
+ # Return a sequence number from sequence 'name'
+ def getSequence(self, name):
+ return self.__singleQuery("select nextval('%s')" % name)
# Run the SQL statement 'statement'
-# def sql(self, statement):
-# pass
+ def sql(self, statement):
+ cursor = self.__connection.cursor()
+ try:
+ cursor.execute(statement)
+ cursor.close()
+ except:
+ cursor.close()
+ raise
+
+ # Used internally
+ def __singleQuery(self, statement):
+ cursor = self.__connection.cursor()
+ try:
+ cursor.execute(statement)
+ rv = cursor.fetchone()
+ cursor.close()
+ except mesg:
+ GDebug.printMesg(1,"**** Unable to execute extension query")
+ GDebug.printMesg(1,"**** %s" % mesg)
+ cursor.close()
+ return None
+
+ try:
+ return rv[0]
+ except:
+ return None
######################################
#
-# The following hashes describe
+# The following hashes describe
# this driver's characteristings.
#
######################################
#
# All datasouce "types" and corresponding DataObject class
-#
-supportedDataObjects = {
+#
+supportedDataObjects = {
'object': PG_DataObject_Object,
'sql': PG_DataObject_SQL
}
Index: gnue/gnue-common/src/dbdrivers/postgresql/DBdriver.py
diff -u gnue/gnue-common/src/dbdrivers/postgresql/DBdriver.py:1.22
gnue/gnue-common/src/dbdrivers/postgresql/DBdriver.py:1.23
--- gnue/gnue-common/src/dbdrivers/postgresql/DBdriver.py:1.22 Sun Nov 4
17:22:35 2001
+++ gnue/gnue-common/src/dbdrivers/postgresql/DBdriver.py Thu Nov 8
02:55:52 2001
@@ -230,50 +230,74 @@
class PG_DataObject_SQL(PG_DataObject, \
- DBSIG_DataObject_SQL):
- def __init__(self):
- # Call DBSIG init first because PG_DataObject needs to overwrite
+ DBSIG_DataObject_SQL):
+ def __init__(self):
+ # Call DBSIG init first because PG_DataObject needs to overwrite
# some of its values
- DBSIG_DataObject_SQL.__init__(self)
+ DBSIG_DataObject_SQL.__init__(self)
PG_DataObject.__init__(self)
- def _buildQuery(self, conditions={}):
+ def _buildQuery(self, conditions={}):
return DBSIG_DataObject_SQL._buildQuery(self, conditions)
#
# Extensions to Trigger Namespaces
-#
-class TriggerExtensions:
+#
+class TriggerExtensions:
- def __init__(self, connection):
+ def __init__(self, connection):
self.__connection = connection
# Return the current date, according to database
-# def getDate(self):
-# pass
+ def getTimeStamp(self):
+ return self.__singleQuery("select current_timestamp")
- # Return a sequence number from sequence 'name'
-# def getSequence(self, name):
-# pass
+ # Return a sequence number from sequence 'name'
+ def getSequence(self, name):
+ return self.__singleQuery("select nextval('%s')" % name)
# Run the SQL statement 'statement'
-# def sql(self, statement):
-# pass
+ def sql(self, statement):
+ cursor = self.__connection.cursor()
+ try:
+ cursor.execute(statement)
+ cursor.close()
+ except:
+ cursor.close()
+ raise
+
+ # Used internally
+ def __singleQuery(self, statement):
+ cursor = self.__connection.cursor()
+ try:
+ cursor.execute(statement)
+ rv = cursor.fetchone()
+ cursor.close()
+ except mesg:
+ GDebug.printMesg(1,"**** Unable to execute extension query")
+ GDebug.printMesg(1,"**** %s" % mesg)
+ cursor.close()
+ return None
+
+ try:
+ return rv[0]
+ except:
+ return None
######################################
#
-# The following hashes describe
+# The following hashes describe
# this driver's characteristings.
#
######################################
#
# All datasouce "types" and corresponding DataObject class
-#
-supportedDataObjects = {
+#
+supportedDataObjects = {
'object': PG_DataObject_Object,
'sql': PG_DataObject_SQL
}
Index: gnue/gnue-common/src/dbdrivers/psycopg/DBdriver.py
diff -u gnue/gnue-common/src/dbdrivers/psycopg/DBdriver.py:1.4
gnue/gnue-common/src/dbdrivers/psycopg/DBdriver.py:1.5
--- gnue/gnue-common/src/dbdrivers/psycopg/DBdriver.py:1.4 Tue Nov 6
14:41:10 2001
+++ gnue/gnue-common/src/dbdrivers/psycopg/DBdriver.py Thu Nov 8 02:55:52 2001
@@ -182,29 +182,53 @@
DBSIG_DataObject_SQL.__init__(self)
PG_DataObject.__init__(self)
- def _buildQuery(self, conditions={}):
+ def _buildQuery(self, conditions={}):
return DBSIG_DataObject_SQL._buildQuery(self, conditions)
#
# Extensions to Trigger Namespaces
-#
-class TriggerExtensions:
+#
+class TriggerExtensions:
- def __init__(self, connection):
+ def __init__(self, connection):
self.__connection = connection
# Return the current date, according to database
-# def getDate(self):
-# pass
+ def getTimeStamp(self):
+ return self.__singleQuery("select current_timestamp")
- # Return a sequence number from sequence 'name'
-# def getSequence(self, name):
-# pass
+ # Return a sequence number from sequence 'name'
+ def getSequence(self, name):
+ return self.__singleQuery("select nextval('%s')" % name)
# Run the SQL statement 'statement'
-# def sql(self, statement):
-# pass
+ def sql(self, statement):
+ cursor = self.__connection.cursor()
+ try:
+ cursor.execute(statement)
+ cursor.close()
+ except:
+ cursor.close()
+ raise
+
+ # Used internally
+ def __singleQuery(self, statement):
+ cursor = self.__connection.cursor()
+ try:
+ cursor.execute(statement)
+ rv = cursor.fetchone()
+ cursor.close()
+ except mesg:
+ GDebug.printMesg(1,"**** Unable to execute extension query")
+ GDebug.printMesg(1,"**** %s" % mesg)
+ cursor.close()
+ return None
+
+ try:
+ return rv[0]
+ except:
+ return None
@@ -217,8 +241,8 @@
#
# All datasouce "types" and corresponding DataObject class
-#
-supportedDataObjects = {
+#
+supportedDataObjects = {
'object': PG_DataObject_Object,
'sql': PG_DataObject_SQL
}
Index: gnue/gnue-common/src/dbdrivers/pypgsql/DBdriver.py
diff -u gnue/gnue-common/src/dbdrivers/pypgsql/DBdriver.py:1.6
gnue/gnue-common/src/dbdrivers/pypgsql/DBdriver.py:1.7
--- gnue/gnue-common/src/dbdrivers/pypgsql/DBdriver.py:1.6 Tue Nov 6
14:41:10 2001
+++ gnue/gnue-common/src/dbdrivers/pypgsql/DBdriver.py Thu Nov 8 02:55:52 2001
@@ -183,50 +183,74 @@
class PG_DataObject_SQL(PG_DataObject, \
- DBSIG_DataObject_SQL):
- def __init__(self):
- # Call DBSIG init first because PG_DataObject needs to overwrite
+ DBSIG_DataObject_SQL):
+ def __init__(self):
+ # Call DBSIG init first because PG_DataObject needs to overwrite
# some of its values
- DBSIG_DataObject_SQL.__init__(self)
+ DBSIG_DataObject_SQL.__init__(self)
PG_DataObject.__init__(self)
- def _buildQuery(self, conditions={}):
+ def _buildQuery(self, conditions={}):
return DBSIG_DataObject_SQL._buildQuery(self, conditions)
#
# Extensions to Trigger Namespaces
-#
-class TriggerExtensions:
+#
+class TriggerExtensions:
- def __init__(self, connection):
+ def __init__(self, connection):
self.__connection = connection
# Return the current date, according to database
-# def getDate(self):
-# pass
+ def getTimeStamp(self):
+ return self.__singleQuery("select current_timestamp")
- # Return a sequence number from sequence 'name'
-# def getSequence(self, name):
-# pass
+ # Return a sequence number from sequence 'name'
+ def getSequence(self, name):
+ return self.__singleQuery("select nextval('%s')" % name)
# Run the SQL statement 'statement'
-# def sql(self, statement):
-# pass
+ def sql(self, statement):
+ cursor = self.__connection.cursor()
+ try:
+ cursor.execute(statement)
+ cursor.close()
+ except:
+ cursor.close()
+ raise
+
+ # Used internally
+ def __singleQuery(self, statement):
+ cursor = self.__connection.cursor()
+ try:
+ cursor.execute(statement)
+ rv = cursor.fetchone()
+ cursor.close()
+ except mesg:
+ GDebug.printMesg(1,"**** Unable to execute extension query")
+ GDebug.printMesg(1,"**** %s" % mesg)
+ cursor.close()
+ return None
+
+ try:
+ return rv[0]
+ except:
+ return None
######################################
#
-# The following hashes describe
+# The following hashes describe
# this driver's characteristings.
#
######################################
#
# All datasouce "types" and corresponding DataObject class
-#
-supportedDataObjects = {
+#
+supportedDataObjects = {
'object': PG_DataObject_Object,
'sql': PG_DataObject_SQL
}
Index: gnue/gnue-common/src/dbdrivers/sybase/DBdriver.py
diff -u gnue/gnue-common/src/dbdrivers/sybase/DBdriver.py:1.3
gnue/gnue-common/src/dbdrivers/sybase/DBdriver.py:1.4
--- gnue/gnue-common/src/dbdrivers/sybase/DBdriver.py:1.3 Sun Nov 4
17:22:35 2001
+++ gnue/gnue-common/src/dbdrivers/sybase/DBdriver.py Thu Nov 8 02:55:52 2001
@@ -19,7 +19,7 @@
# Copyright 2000, 2001 Free Software Foundation
#
# FILE:
-# DBdriver.py
+# sybase/DBdriver.py
#
# DESCRIPTION:
# Driver to provide access to data via Dave Cole's Sybase ASE/Python Driver