def get_col_spec(self):
return "TIMESTAMP"
def convert_result_value(self, value):
- (value, microsecond) = value.split('.')
- microsecond = int(microsecond)
+ if value is None:
+ return None
+ parts = value.split('.')
+ try:
+ (value, microsecond) = value.split('.')
+ microsecond = int(microsecond)
+ except ValueError:
+ (value, microsecond) = (value, 0)
tup = time.strptime(value, "%Y-%m-%d %H:%M:%S")
return datetime.datetime(microsecond=microsecond, *tup[0:6])
from testbase import PersistTest
import testbase
-import unittest, sys
+import unittest, sys, datetime
import sqlalchemy.databases.sqlite as sqllite
self.users.update(self.users.c.user_id == 7).execute(user_name = 'fred')
print repr(self.users.select().execute().fetchall())
+ def testselectdate(self):
+ users_with_date = Table('query_users_with_date', db,
+ Column('user_id', INT, primary_key = True),
+ Column('user_name', VARCHAR(20)),
+ Column('user_date', DateTime),
+ redefine = True
+ )
+ users_with_date.create()
+
+ c = db.connection()
+ users_with_date.insert().execute(user_id = 7, user_name = 'jack', user_date=datetime.datetime(2005,11,10))
+ users_with_date.insert().execute(user_id = 8, user_name = 'roy', user_date=datetime.datetime(2005,11,10, 11,52,35))
+ users_with_date.insert().execute(user_id = 9, user_name = 'foo', user_date=datetime.datetime(2005,11,10, 11,52,35, 54839))
+ users_with_date.insert().execute(user_id = 10, user_name = 'colber', user_date=None)
+ print repr(users_with_date.select().execute().fetchall())
+ users_with_date.drop()
+
def testdelete(self):
c = db.connection()