ok, its just the capitalization in pubDate throwing it off.  just checked in this patch to ansisql.py:

+++ ansisql.py  (working copy)
@@ -158,9 +158,9 @@
             # if we are within a visit to a Select, set up the "typemap"
             # for this column which is used to translate result set values
             if self.select_stack[-1].use_labels:
-                self.typemap.setdefault(column.label, column.type)
+                self.typemap.setdefault(column.label.lower(), column.type)
             else:
-                self.typemap.setdefault(column.key, column.type)
+                self.typemap.setdefault(column.key.lower(), column.type)


On Dec 19, 2005, at 12:56 AM, limodou wrote:

from sqlalchemy import *

import datetime


engine = create_engine('sqlite://filename=d:/test.db', echo=True)


RssData = Table('rss_data', engine,

    Column('id', Integer, primary_key = True),

    Column('title', Unicode),

    Column('pubDate', DateTime)

)

RssData.create()


class Date(object):

    def __init__(self, date=None, title=None):

        self.pubDate = date

        self.title = title


Date.mapper = mapper(Date, RssData)



a = Date(date=datetime.datetime.now(), title="Test")

objectstore.commit(a)


and I got



CREATE TABLE rss_data(

id INTEGER NOT NULL PRIMARY KEY,

title TEXT,

pubDate TIMESTAMP

)



{}

INSERT INTO rss_data (title, pubDate) VALUES (?, ?)

['Test', datetime.datetime(2005, 12, 19, 13, 53, 0, 71000)]


Second, I got it from database as below:


from sqlalchemy import *

import datetime


engine = create_engine('sqlite://filename=d:/test.db', echo=True)


RssData = Table('rss_data', engine,

    Column('id', Integer, primary_key = True),

    Column('title', Unicode),

    Column('pubDate', DateTime)

)

#RssData.create()


class Date(object):

    def __init__(self, date=None, title=None):

        self.pubDate = date

        self.title = title


Date.mapper = mapper(Date, RssData)



#a = Date(date=datetime.datetime.now(), title="Test")

#objectstore.commit(a)

r = Date.mapper.select()

for i in r:

    print i.pubDate, type(i.pubDate)


Reply via email to