On 6/21/07, Matthew Perry <[EMAIL PROTECTED]> wrote:
Hi all,
I'm using Access 2000 .mdb as a backend to my python script and am
seeing some inconsistencies in the results.
If I run the script below, I get 15 rows.
If I run the SAME EXACT query directly in MS Access, I get 12 rows.
Perhaps relevant to the issue - the table referenced in the query
below is not actually a table but another query. Can you use rs.Open()
on a chained query? Is there some sort of caching going on? Why is
there a discrepency?
Thanks for any tips!
=========================
import win32com.client
conn = win32com.client.Dispatch('ADODB.Connection')
DSN = 'PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE=C:/test1.mdb;'
conn.Open(DSN)
rs = win32com.client.Dispatch('ADODB.Recordset')
sql = "SELECT [STUDY AREA] AS area FROM [qry base dataset - SS copcs
only] GROUP BY [STUDY AREA]"
rs.Open(sql, conn, 1, 3)
numrows = 0
if rs.RecordCount > 0:
rs.MoveFirst()
while not rs.EOF:
print str(rs.Fields("area"))
rs.MoveNext()
rs.Close()
conn.Close()
del conn
=======================
--
Matthew T. Perry
http://www.perrygeo.net
"You never change things by fighting the existing reality.
To change something, build a new model that makes
the existing model obsolete" - R. Buckminster Fuller
_______________________________________________
Python-win32 mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-win32
If your not forced to use Access, I would suggest looking at sqlite
(built-in in python2.5 onwards), or available as 3rd party module in
versions 2.4 and below
_______________________________________________
Python-win32 mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-win32