Id like to thank you for all your help however is my solution adequate to
use in that I perform a metadata.create_all() in the function in my db.py
python file that returns the session?

On Mon, Apr 27, 2009 at 8:07 PM, Michael Mileusnich
<justmike2...@gmail.com>wrote:

>
>
> On Mon, Apr 27, 2009 at 6:08 PM, Michael Trier <mtr...@gmail.com> wrote:
>
>>
>> Okay I'll get rid of it.
>>
>> On Apr 27, 2009, at 6:04 PM, "Michael Bayer"
>> <mike...@zzzcomputing.com> wrote:
>>
>> >
>> >
>>  > I'd love to revert that change and just say MSSQL doesn't support
>> > SAVEPOINT for now.   or put an "enable_savepoint" flag in the dialect.
>> >
>> >
>> > polaar wrote:
>> >>
>> >> Could this be related to this change:
>> >> http://www.sqlalchemy.org/trac/changeset/5564
>> >>
>> >> I encountered a similar problem with mssql/pyodbc today (the echo
>> >> output showed the correct statements and params, but no changes
>> >> seemed
>> >> to be made in the db at all). The problem only occurred when using
>> >> the
>> >> orm/session layer, same statements with engine.execute seemed to
>> >> work.
>> >>
>> >> I managed to "fix" it by reverting the change with the following
>> >> monkeypatch:
>> >>
>> >> from sqlalchemy.databases.mssql import MSSQLDialect
>> >> MSSQLDialect.do_begin = lambda self, conn: pass
>> >>
>> >> Not sure this is related though (or if this is a good solution), just
>> >> thought I'd let it know in case it helps.
>> >>
>> >> greetings,
>> >>
>> >> Steven
>> >>
>> >>
>> >>
>> >> On 25 apr, 15:05, Michael Trier <mtr...@gmail.com> wrote:
>> >>> On Apr 24, 2009, at 7:50 PM, Michael Mileusnich
>> >>>
>> >>> <justmike2...@gmail.com> wrote:
>> >>>> Wow..your example worked for me.  Could the kwargs the issue?
>> >>>
>> >>> No. Likely you have some sort of conflict on the dbapi side.
>> >>>
>> >>> If it's possible for you to send me your actual code
>> >>> (mtr...@gmail.com) I'd be happy to try and figure out the issue.
>> >>>
>> >>>> On Fri, Apr 24, 2009 at 3:14 PM, mtrier <mtr...@gmail.com> wrote:
>> >>>
>> >>>>>> On Apr 24, 2009, at 4:02 AM, Michael Mileusnich wrote:
>> >>>
>> >>>>>> I have formated my PC with Vista 32.  I also Installed SQL
>> >>>> Server 2008
>> >>>>>> Express.  Installed Python 2.6 and pyodbc...SAME ISSUE.  I would
>> >>>> be willing
>> >>>>>> to have somebody overlook my python code.  With echo on
>> >>>> everything looks
>> >>>>>> like it should be INSERTING.
>> >>>
>> >>>> I've written this script based on the information you have
>> >>>> supplied.
>> >>>> It works fine for me:
>> >>>
>> >>>> from sqlalchemy import *
>> >>>> from sqlalchemy.orm import *
>> >>>
>> >>>> engine = create_engine('mssql://sprint:spr...@localhost/sprint',
>> >>>> echo=True)
>> >>>> metadata = MetaData(engine)
>> >>>> Session = scoped_session(sessionmaker(bind=engine, autoflush=False,
>> >>>> autocommit=True))
>> >>>
>> >>>> action_table = Table(
>> >>>>        'ACTIONS', metadata,
>> >>>>        Column('ACTIONID', String(48), primary_key=True),
>> >>>>        Column('TITLE', String(128)),
>> >>>>        Column('CMDLINE', String(512)),
>> >>>>        Column('STDIN', Text),
>> >>>>        Column('STARTINDIR', String(512)),
>> >>>>        Column('PRIO', Integer),
>> >>>>        )
>> >>>
>> >>>> class action(object):
>> >>>>    def __init__(self, ACTIONID, CMDLINE):
>> >>>>        self.ACTIONID = ACTIONID
>> >>>>        self.CMDLINE = CMDLINE
>> >>>
>> >>>>    def __repr__(self):
>> >>>>        return "<action('%s', '%s')>" % (self.ACTIONID,
>> >>>> self.CMDLINE)
>> >>>
>> >>>> mapper(action, action_table)
>> >>>
>> >>>> metadata.create_all()
>> >>>
>> >>>> session = Session()
>> >>>> new_action = action(ACTIONID = '500', CMDLINE = 'sol')
>> >>>> session.add(new_action)
>> >>>> session.flush()
>> >>>> session.expunge_all()
>> >>>
>> >>>> act = session.query(action).filter_by(ACTIONID='500').one()
>> >>>> assert new_action.ACTIONID == act.ACTIONID
>> >>>
>> >>>> ----------------------
>> >>>
>> >>>> Would you please try it and let me know what results you get.  The
>> >>>> following is my output.
>> >>>
>> >>>> S:\sqlalchemy.git\lib>python msssqlprob.py
>> >>>> 2009-04-24 16:10:30,473 INFO sqlalchemy.engine.base.Engine.0x...
>> >>>> 6110
>> >>>> SELECT user_name() as user_name;
>> >>>> 2009-04-24 16:10:30,552 INFO sqlalchemy.engine.base.Engine.0x...
>> >>>> 6110
>> >>>> []
>> >>>> 2009-04-24 16:10:30,568 INFO sqlalchemy.engine.base.Engine.0x...
>> >>>> 6110
>> >>>>            SELECT default_schema_name FROM
>> >>>>            sys.database_principals
>> >>>>            WHERE name = ?
>> >>>>            AND type = 'S'
>> >>>
>> >>>> 2009-04-24 16:10:30,568 INFO sqlalchemy.engine.base.Engine.0x...
>> >>>> 6110
>> >>>> [u'dbo']
>> >>>> 2009-04-24 16:10:30,582 INFO sqlalchemy.engine.base.Engine.0x...
>> >>>> 6110
>> >>>> SELECT [COLUMNS_1].[TABLE_SCHEMA], [COLUMNS_1].[TAB
>> >>>> LE_NAME], [COLUMNS_1].[COLUMN_NAME], [COLUMNS_1].[IS_NULLABLE],
>> >>>> [COLUMNS_1].[DATA_TYPE], [COLUMNS_1].[ORDINAL_POSITION],
>> >>>>  [COLUMNS_1].[CHARACTER_MAXIMUM_LENGTH], [COLUMNS_1].
>> >>>> [NUMERIC_PRECISION], [COLUMNS_1].[NUMERIC_SCALE], [COLUMNS_1].[COLU
>> >>>> MN_DEFAULT], [COLUMNS_1].[COLLATION_NAME]
>> >>>> FROM [INFORMATION_SCHEMA].[COLUMNS] AS [COLUMNS_1]
>> >>>> WHERE [COLUMNS_1].[TABLE_NAME] = ? AND [COLUMNS_1].[TABLE_SCHEMA]
>> >>>> = ?
>> >>>> 2009-04-24 16:10:30,598 INFO sqlalchemy.engine.base.Engine.0x...
>> >>>> 6110
>> >>>> ['ACTIONS', u'dbo']
>> >>>> 2009-04-24 16:10:30,598 INFO sqlalchemy.engine.base.Engine.0x...
>> >>>> 6110
>> >>>> CREATE TABLE [ACTIONS] (
>> >>>>        [ACTIONID] VARCHAR(48) NOT NULL,
>> >>>>        [TITLE] VARCHAR(128) NULL,
>> >>>>        [CMDLINE] VARCHAR(512) NULL,
>> >>>>        [STDIN] TEXT NULL,
>> >>>>        [STARTINDIR] VARCHAR(512) NULL,
>> >>>>        [PRIO] INTEGER NULL,
>> >>>>        PRIMARY KEY ([ACTIONID])
>> >>>> )
>> >>>
>> >>>> 2009-04-24 16:10:30,630 INFO sqlalchemy.engine.base.Engine.0x...
>> >>>> 6110
>> >>>> ()
>> >>>> 2009-04-24 16:10:30,661 INFO sqlalchemy.engine.base.Engine.0x...
>> >>>> 6110
>> >>>> COMMIT
>> >>>> 2009-04-24 16:10:30,693 INFO sqlalchemy.engine.base.Engine.0x...
>> >>>> 6110
>> >>>> BEGIN
>> >>>> 2009-04-24 16:10:30,707 INFO sqlalchemy.engine.base.Engine.0x...
>> >>>> 6110
>> >>>> INSERT INTO [ACTIONS] ([ACTIONID], [TITLE], [CMDLIN
>> >>>> E], [STDIN], [STARTINDIR], [PRIO]) VALUES (?, ?, ?, ?, ?, ?)
>> >>>> 2009-04-24 16:10:30,707 INFO sqlalchemy.engine.base.Engine.0x...
>> >>>> 6110
>> >>>> ['500', None, 'sol', None, None, None]
>> >>>> 2009-04-24 16:10:30,723 INFO sqlalchemy.engine.base.Engine.0x...
>> >>>> 6110
>> >>>> COMMIT
>> >>>> 2009-04-24 16:10:30,723 INFO sqlalchemy.engine.base.Engine.0x...
>> >>>> 6110
>> >>>> SELECT TOP 2 [ACTIONS].[ACTIONID] AS [ACTIONS_ACTIO
>> >>>> NID], [ACTIONS].[TITLE] AS [ACTIONS_TITLE], [ACTIONS].[CMDLINE] AS
>> >>>> [ACTIONS_CMDLINE], [ACTIONS].[STDIN] AS [ACTIONS_STDI
>> >>>> N], [ACTIONS].[STARTINDIR] AS [ACTIONS_STARTINDIR], [ACTIONS].
>> >>>> [PRIO]
>> >>>> AS [ACTIONS_PRIO]
>> >>>> FROM [ACTIONS]
>> >>>> WHERE [ACTIONS].[ACTIONID] = ?
>> >>>> 2009-04-24 16:10:30,740 INFO sqlalchemy.engine.base.Engine.0x...
>> >>>> 6110
>> >>>> ['500']
>> >>>
>> >>>> Michael Trier
>> >>>> http://michaeltrier.com
>> >>>
>> >>
>> >
>> >
>> > >
>>
>> >>
>>
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To post to this group, send email to sqlalchemy@googlegroups.com
To unsubscribe from this group, send email to 
sqlalchemy+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sqlalchemy?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to