commit-gnue
[Top][All Lists]
Advanced

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

gnue-common/src/datasources/drivers/interbase/i...


From: Bajusz Tamás
Subject: gnue-common/src/datasources/drivers/interbase/i...
Date: Thu, 11 Sep 2003 17:03:19 -0400

CVSROOT:        /cvsroot/gnue
Module name:    gnue-common
Branch:         
Changes by:     Bajusz Tamás <address@hidden>   03/09/11 17:03:19

Modified files:
        src/datasources/drivers/interbase/interbase: Driver.py 

Log message:
        adding default value support to  firebird introspection

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-common/src/datasources/drivers/interbase/interbase/Driver.py.diff?tr1=1.21&tr2=1.22&r1=text&r2=text

Patches:
Index: gnue-common/src/datasources/drivers/interbase/interbase/Driver.py
diff -c gnue-common/src/datasources/drivers/interbase/interbase/Driver.py:1.21 
gnue-common/src/datasources/drivers/interbase/interbase/Driver.py:1.22
*** gnue-common/src/datasources/drivers/interbase/interbase/Driver.py:1.21      
Fri Aug  8 14:29:20 2003
--- gnue-common/src/datasources/drivers/interbase/interbase/Driver.py   Thu Sep 
11 17:03:19 2003
***************
*** 35,41 ****
  
  
  
! from string import lower, rstrip
  import sys
  from gnue.common.datasources import GDataObjects, GConditions
  from gnue.common.apps import GDebug
--- 35,41 ----
  
  
  
! from string import upper, lower, rstrip
  import sys
  from gnue.common.datasources import GDataObjects, GConditions
  from gnue.common.apps import GDebug
***************
*** 226,236 ****
        if nativetype in ('int','float','long'):
          attrs['datatype']='number'
          attrs['precision']=d[SIG2api.DESCRIPTION_SCALE]
!       elif nativetype == 'datetime':
          attrs['datatype']='date'
        else:
          attrs['datatype']='text'
  
  
        list.append(GDataObjects.Schema(attrs=attrs))
  
--- 226,247 ----
        if nativetype in ('int','float','long'):
          attrs['datatype']='number'
          attrs['precision']=d[SIG2api.DESCRIPTION_SCALE]
!       elif nativetype == 'tuple':
          attrs['datatype']='date'
        else:
          attrs['datatype']='text'
  
+       cursor.execute("select rdb$default_source from rdb$relation_fields"+ \
+                   " where rdb$relation_name = '%s' " % (parent.name)+ \
+                   " and rdb$field_name = '%s'" % (upper(attrs['name'])))
+       defrs = cursor.fetchone()
+       if defrs[0]:
+         dflt = defrs[0]
+         if dflt[9:12] == "NOW":
+           attrs['defaulttype'] = 'timestamp'
+         else:
+           attrs['defaulttype'] = 'constant'
+           attrs['defaultval'] = dflt[8:]
  
        list.append(GDataObjects.Schema(attrs=attrs))
  




reply via email to

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