DAO and Access97 WHERE clause fails
Hi all, I am attempting to use Access97 as the database to hold the results of a python script. I seem to be able to make simple SELECT clauses work (like SELECT * FROM TableName), but have not been able to figure out how to add a WHERE clause to that (e.g., SELECT * FROM TableName WHERE myFieldName = 34) This fails complaining that the wrong number of parameters are present. I haved tried DAO36 and I have tried the ADO version with the same results. Therefore I have to conclude it is my screwup! Help in the forum or via email would sure be appreciated! ([EMAIL PROTECTED]) Here is the skeleton code: import win32com.client daoEngine = win32com.client.Dispatch('DAO.DBEngine.35') sDBname = 'vpyAnalyzeDirectorySize.mdb' sDB = 'c:\\documents and settings\\vic\\my documents\\tools\\python25\\_myscripts\\'+sDBname daoDB = daoEngine.OpenDatabase(sDB) sSQL1 = 'SELECT * FROM T_Index2DirName' daoRS = daoDB.OpenRecordset(sSQL1) # this works FINE and I can play with the record set # hsDB = hash(sDB) sSQL3 = 'SELECT * FROM T_Index2DirName WHERE iIndex = hsDB' # names are all correct in mdb file daoRStest = daoDB.OpenRecordset(sSQL3) # this FAILS, even though the record is there daoRS.Close() Traceback (most recent call last): File "C:\Documents and Settings\Vic\My Documents\Tools\python25\Lib\site-packages\pythonwin\pywin\framework\scriptutils.py", line 310, in RunScript exec codeObject in __main__.__dict__ File "C:\Documents and Settings\Vic\My Documents\Tools\python25\_MyScripts\TestForPosting01.py", line 14, in daoRStest = daoDB.OpenRecordset(sSQL3) # this FAILS, even though record is there File "C:\Documents and Settings\Vic\My Documents\Tools\python25\lib\site-packages\win32com\gen_py\00025E01---C000-0046x0x5x0.py", line 523, in OpenRecordset , Type, Options, LockEdit) com_error: (-2147352567, 'Exception occurred.', (0, 'DAO.Database', 'Too few parameters. Expected 1.', 'jeterr35.hlp', 5003061, -2146825227), None) -- http://mail.python.org/mailman/listinfo/python-list
Re: DAO and Access97 WHERE clause fails
Hello all. Thanks for the help! John pointed out to me the flaw in my code: Change: sSQL3 = 'SELECT * FROM T_Index2DirName WHERE iIndex = hsDB' to: sSQL3 = 'SELECT * FROM T_Index2DirName WHERE iIndex = %ld' % hsDB That did the trick. I had looked at the statement so often that it was *obviously* correct. John also pointed me to the DAO help file that I had not been able to find. Dennis also pointed out the correction, but went on to educate me much more on what I was trying to do. BTW, I had searched extensivly on line for the answer before posting, but was missing the obvious, stupid coding error. Thanks to all for getting me back on track! --Vic "v.davis2" <[EMAIL PROTECTED]> wrote in message news:[EMAIL PROTECTED] > Hi all, > > I am attempting to use Access97 as the database to hold the results of a > python script. I seem to be able to make simple SELECT clauses work (like > SELECT * FROM TableName), but have not been able to figure out how to add > a WHERE clause to that (e.g., SELECT * FROM TableName WHERE myFieldName = > 34) This fails complaining that the wrong number of parameters are > present. > I haved tried DAO36 and I have tried the ADO version with the same > results. Therefore I have to conclude it is my screwup! > Help in the forum or via email would sure be appreciated! > ([EMAIL PROTECTED]) > > Here is the skeleton code: > > import win32com.client > daoEngine = win32com.client.Dispatch('DAO.DBEngine.35') > sDBname = 'vpyAnalyzeDirectorySize.mdb' > sDB = 'c:\\documents and settings\\vic\\my > documents\\tools\\python25\\_myscripts\\'+sDBname > daoDB = daoEngine.OpenDatabase(sDB) > > sSQL1 = 'SELECT * FROM T_Index2DirName' > daoRS = daoDB.OpenRecordset(sSQL1) # this works FINE and I can > play with the record set > > # > > hsDB = hash(sDB) > sSQL3 = 'SELECT * FROM T_Index2DirName WHERE iIndex = hsDB' # names are > all correct in mdb file > daoRStest = daoDB.OpenRecordset(sSQL3) # this FAILS, even though the > record is there > > daoRS.Close() > > > Traceback (most recent call last): > File "C:\Documents and Settings\Vic\My > Documents\Tools\python25\Lib\site-packages\pythonwin\pywin\framework\scriptutils.py", > > line 310, in RunScript >exec codeObject in __main__.__dict__ > File "C:\Documents and Settings\Vic\My > Documents\Tools\python25\_MyScripts\TestForPosting01.py", line 14, in > >daoRStest = daoDB.OpenRecordset(sSQL3) # this FAILS, even though > record is there > File "C:\Documents and Settings\Vic\My > Documents\Tools\python25\lib\site-packages\win32com\gen_py\00025E01---C000-0046x0x5x0.py", > > line 523, in OpenRecordset >, Type, Options, LockEdit) > com_error: (-2147352567, 'Exception occurred.', (0, 'DAO.Database', 'Too > few parameters. Expected 1.', 'jeterr35.hlp', 5003061, -2146825227), None) > -- http://mail.python.org/mailman/listinfo/python-list
Snack -- Help
Is anyone out there knowledgeable about using the Snack tool under Windows? Once I try to get beyond the simple provided examples I run out of reference material. Thanks, Vic -- http://mail.python.org/mailman/listinfo/python-list
A Windows Printing Problem -- Tk Canvas Under Python
Hi all, I have searched a bit for this -- both in the newsgroup and Google -- No luck. How do I print a Tk Canvas object under Windows? No, I do NOT want to generate the Postscript and do it that way (unless I have to). The same question applies to other aspects of the GUI. I just have to believe that this common problem has been solved so many times that everyone thinks it trivial -- except me. Help please? Vic -- http://mail.python.org/mailman/listinfo/python-list
Audio -- Looking for Help with Using Snack on Windows
Hi all, I am looking for some non-trivial examples of use of the Snack toolbox [on Windows]. The documentation seems a bit lacking. One typical example is how to use the FFT method or the Configure method or the mixer or . I have searched and examined many examples, but so far they just seem to be replays of the trivial examples given with the package. Thanks so much! If you have more ideas to share than a simple post here, please feel free to email me at [EMAIL PROTECTED] Thanks! Vic -- http://mail.python.org/mailman/listinfo/python-list