commit-gnue
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

gnue/common/src/dbdrivers/_pgsql DBdriver.py


From: Arturas Kriukovas
Subject: gnue/common/src/dbdrivers/_pgsql DBdriver.py
Date: Mon, 15 Jul 2002 10:53:59 -0400

CVSROOT:        /cvsroot/gnue
Module name:    gnue
Changes by:     Arturas Kriukovas <address@hidden>      02/07/15 10:53:59

Modified files:
        common/src/dbdrivers/_pgsql: DBdriver.py 

Log message:
        Added _dateTimeFormat='%Y-%m-%d %H:%M:%S'.
        Added time\date datatype formatting (from '2002-12-31 23:59:59,99' to
        '2002-12-31 23:59:59').

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/common/src/dbdrivers/_pgsql/DBdriver.py.diff?tr1=1.18&tr2=1.19&r1=text&r2=text

Patches:
Index: gnue/common/src/dbdrivers/_pgsql/DBdriver.py
diff -c gnue/common/src/dbdrivers/_pgsql/DBdriver.py:1.18 
gnue/common/src/dbdrivers/_pgsql/DBdriver.py:1.19
*** gnue/common/src/dbdrivers/_pgsql/DBdriver.py:1.18   Wed Jul 10 09:31:22 2002
--- gnue/common/src/dbdrivers/_pgsql/DBdriver.py        Mon Jul 15 10:53:59 2002
***************
*** 28,34 ****
  # NOTES:
  #
  
! 
  from string import lower, join, split
  import sys
  from gnue.common import GDebug, GDataObjects
--- 28,34 ----
  # NOTES:
  #
  
! import string
  from string import lower, join, split
  import sys
  from gnue.common import GDebug, GDataObjects
***************
*** 38,45 ****
  from gnue.common.dbdrivers._dbsig.DBdriver import DBSIG_DataObject_Object as 
PGSQL_DataObject_Object
  from gnue.common.dbdrivers._dbsig.DBdriver import DBSIG_DataObject_SQL as 
PGSQL_DataObject_SQL
  
  class PGSQL_RecordSet(DBSIG_RecordSet):
!   pass
  
  class PGSQL_ResultSet(DBSIG_ResultSet):
    def __init__(self, dataObject, cursor=None, defaultValues={}, 
masterRecordSet=None):
--- 38,77 ----
  from gnue.common.dbdrivers._dbsig.DBdriver import DBSIG_DataObject_Object as 
PGSQL_DataObject_Object
  from gnue.common.dbdrivers._dbsig.DBdriver import DBSIG_DataObject_SQL as 
PGSQL_DataObject_SQL
  
+ 
  class PGSQL_RecordSet(DBSIG_RecordSet):
!   def _buildUpdateStatement(self):
!     updates = []
!     for field in self._modifiedFlags.keys():
!     # To convert date from format '2002-12-31 23:59:59,99'
!     # into '2002-12-31 23:59:59' format.
!     # We have to determine whether given string is date\time
!     # maybe it's the most stupid way, but it should work.
!     # TODO: if in ANY other field data of this format and comma in
!     # place will exist, the remaining string from first ',' will be
!     # eaten.
!     # If you know better decision - please, modify this code.
!       tmpDate = self._fields[field]
!       if ((len(tmpDate)==22) and (tmpDate[-3]==',')):
!         tmpDate = tmpDate.split(',')
!         tmpDate = tmpDate[0]
!       updates.append ("%s=%s" % (field,
!         self._parent._dataObject._toSqlString(tmpDate)))
! 
!     if self._parent._dataObject._primaryIdField:
!       where = [self._parent._dataObject._primaryIdFormat % \
!           self._initialData[self._parent._dataObject._primaryIdField]  ]
!     else:
!       where = []
!       for field in self._initialData.keys():
!         if self._initialData[field] == None:
!           where.append ("%s IS NULL" % field)
!         else:
!           where.append ("%s=%s" % (field, 
self._parent._dataObject._toSqlString(self._initialData[field])))
!     return "UPDATE %s SET %s WHERE %s" % \
!        (self._parent._dataObject.table, string.join(updates,','), \
!         string.join(where,' AND ') )
! 
  
  class PGSQL_ResultSet(DBSIG_ResultSet):
    def __init__(self, dataObject, cursor=None, defaultValues={}, 
masterRecordSet=None):
***************
*** 52,57 ****
--- 84,92 ----
      DBSIG_DataObject.__init__(self)
      self._connectString = 'host=%s dbname=%s user=%s password=%s port=%s'
      self._escapeSingleQuote = '\\'
+     # date/time format
+     self._dateTimeFormat = "'%Y-%m-%d %H:%M:%S'"
+ 
      if pgdriver:
        self._pgdriver = pgdriver
        self._DatabaseError = self._pgdriver.DatabaseError



reply via email to

[Prev in Thread] Current Thread [Next in Thread]