Indeed!

Here is the output:


gms$ python test_connect.py
2014-08-18 10:17:28,095 INFO sqlalchemy.engine.base.Engine SELECT 
user_name()
2014-08-18 10:17:28,095 INFO sqlalchemy.engine.base.Engine ()
2014-08-18 10:17:28,097 DEBUG sqlalchemy.engine.base.Engine Col ('',)
2014-08-18 10:17:28,098 DEBUG sqlalchemy.engine.base.Engine Row (u'dbo', )
2014-08-18 10:17:28,099 INFO sqlalchemy.engine.base.Engine
            SELECT default_schema_name FROM
            sys.database_principals
            WHERE name = ?
            AND type = 'S'

2014-08-18 10:17:28,099 INFO sqlalchemy.engine.base.Engine (u'dbo',)
2014-08-18 10:17:28,101 DEBUG sqlalchemy.engine.base.Engine Col 
('default_schema_name',)
2014-08-18 10:17:28,103 INFO sqlalchemy.engine.base.Engine SELECT 
CAST('test plain returns' AS VARCHAR(60)) AS anon_1
2014-08-18 10:17:28,103 INFO sqlalchemy.engine.base.Engine ()
2014-08-18 10:17:28,106 INFO sqlalchemy.engine.base.Engine SELECT 
CAST('test unicode returns' AS NVARCHAR(60)) AS anon_1
2014-08-18 10:17:28,106 INFO sqlalchemy.engine.base.Engine ()
<sqlalchemy.engine.base.Connection object at 0x101839490>
2014-08-18 10:17:28,382 INFO sqlalchemy.engine.base.Engine select 6 * 7 as 
[Result];
2014-08-18 10:17:28,382 INFO sqlalchemy.engine.base.Engine ()
2014-08-18 10:17:28,384 DEBUG sqlalchemy.engine.base.Engine Col ('Result',)
2014-08-18 10:17:28,384 DEBUG sqlalchemy.engine.base.Engine Row (42, )
42
2014-08-18 10:17:28,389 INFO sqlalchemy.engine.base.Engine SELECT 
[TABLES_1].[TABLE_NAME]
FROM [INFORMATION_SCHEMA].[TABLES] AS [TABLES_1]
WHERE [TABLES_1].[TABLE_SCHEMA] = CAST(? AS NVARCHAR(max)) AND 
[TABLES_1].[TABLE_TYPE] = ? ORDER BY [TABLES_1].[TABLE_NAME]
2014-08-18 10:17:28,389 INFO sqlalchemy.engine.base.Engine (u'dbo', 'BASE 
TABLE')
2014-08-18 10:17:28,394 DEBUG sqlalchemy.engine.base.Engine Col 
('TABLE_NAME',)
A

Not quite sure how to parse this?

For example,  is "u'dbo'" what is being used as the schema? 

Greg--

On Monday, August 18, 2014 10:05:09 AM UTC-5, Simon King wrote:
>
> On Mon, Aug 18, 2014 at 3:47 PM, Horcle <g...@umn.edu <javascript:>> 
> wrote: 
> > On Friday, August 15, 2014 8:28:41 PM UTC-5, Michael Bayer wrote: 
> >> 
> >> 
> >> On Aug 15, 2014, at 5:03 PM, Greg Silverman <g...@umn.edu> wrote: 
> >> 
> >> 
> >> Then, I thought, what if this is an SQLAlchemy issue. Looks to be. I 
> ran 
> >> the following script as a test: 
> >> 
> >> import pyodbc 
> >> import sqlalchemy 
> >> from sqlalchemy.engine import reflection 
> >> from sqlalchemy.engine.reflection import Inspector 
> >> 
> >> def connect(): 
> >>     return pyodbc.connect( 
> >> 'DRIVER={FreeTDS};SERVER=<ip_address>;' 
> >> 'DATABASE=<db_name>;UID=test;PWD=test;port=1433;' 
> >> 'TDS_Version=9.1;') 
> >> engine = sqlalchemy.create_engine('mssql://', creator=connect) 
> >> conn = engine.connect() 
> >> print conn 
> >> 
> >> for row in engine.execute('select 6 * 7 as [Result];'): 
> >>     print row.Result 
> >> 
> >> insp = reflection.Inspector.from_engine(engine) 
> >> table_name = 'irb_desc' 
> >> table_names = insp.get_table_names() 
> >> if table_name not in table_names: 
> >>     print 'A' 
> >> 
> >> Again, I am connecting fine with the database create.engine method 
> (that 
> >> is '42' is printing as expected), but when I run the 
> >> inspector.get_table_names method with the given conditional it is 
> printing 
> >> the 'A' (I have tried other table names in the same database to which I 
> >> added 'irbd_balance,' all with the same result. 
> >> 
> >> 
> >> 
> >> what is the SQL output if you set echo=‘debug’;   then, take the SQL 
> you 
> >> see and take a look at what it’s SELECTing so you can see what might be 
> >> wrong.  Probably some schema name setting or something like that. 
> > 
> > 
> > 
> > Thanks, I did not realize this was an option (actually, it is echo=True, 
> but 
> > at least I can see the SQL being sent). Hopefully this will lead me to 
> an 
> > answer. 
> > 
>
> "echo='debug'" will show you more information than "echo=True" (it 
> shows the rows coming back as well as the query that is sent) 
>
> Simon 
>

-- 
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sqlalchemy+unsubscr...@googlegroups.com.
To post to this group, send email to sqlalchemy@googlegroups.com.
Visit this group at http://groups.google.com/group/sqlalchemy.
For more options, visit https://groups.google.com/d/optout.

Reply via email to