Richard Schulman schrieb: > I'm having trouble getting started using Python's cx_Oracle binding to > Oracle XE. In forthcoming programs, I need to set variables within sql > statements based on values read in from flat files. But I don't seem > to be able to get even the following stripped-down test program to > work: > > import cx_Oracle > connection = cx_Oracle.connect("username", "password") > cursor = connection.cursor() > > arg_1 = 2 #later, arg_1, arg_2, etc. will be read in files > > cursor.execute("""select mean_eng_txt from mean > where mean_id=:arg_1""",arg_1) > for row in cursor.fetchone(): > print row > cursor.close() > connection.close() > > The program above produces the following error message: > > C:\pythonapps>python oracle_test.py > Traceback (most recent call last): > File "oracle_test.py", line 7, in ? > cursor.execute('select mean_eng_txt from mean where > mean_id=:arg_1',arg_1) > TypeError: expecting a dictionary, sequence or keyword args > > What do I need to do to get this sort of program working?
Do what it tells you to do: use a dictionary as parameters or keyword-args. Not sure what they mean by a sequence though. So it should work like this: cursor.execute("""select mean_eng_txt from mean where mean_id=:arg_1""",{arg_1=arg_1}) Diez -- http://mail.python.org/mailman/listinfo/python-list