Simple mx.ODBC prob seeks simple answer

Discussion in 'Python' started by Greg Corradini, Apr 6, 2007.

  1. Hello all,
    I'm having trouble inserting an SQL selection into a new MS Access table. I
    get a parameter error on my insert statement when I try this (see below for
    code and error msg). I'm not sure if 'insert' or 'update' is the route I
    should be taking.

    CODE:
    #Import Pythond Standard Library Modules
    import win32com.client, sys, os, string, copy, glob
    import mx.ODBC.Windows as odbc

    # Create the Geoprocessor Object
    gp = win32com.client.Dispatch("esriGeoprocessing.GpDispatch.1")
    gp.overwriteoutput = 1

    # Variables
    tempspace = "C:\Documents and Settings\corr1gre\Desktop\Workspace\DBFs &
    Shapefiles\TEST.mdb"
    workspace = string.replace(tempspace,"\\","/")
    worksheet1 = "Mower_I"
    worksheet2 = "Mower_II"

    #Conection to Access
    driv = 'DRIVER={Microsoft Access Driver (*.mdb)};DBQ='+workspace
    conn = odbc.DriverConnect(driv)
    curse = conn.cursor()

    #Drop Tables if they already exist
    try:
    curse.execute('Drop table Table_I')
    curse.execute('Drop table Table_II')
    curse.execute('Drop table Checker')
    except:
    pass
    #Create a New Tables
    curse.execute('Create table Table_I (TISCODE TEXT(12), EXISTSIN
    TEXT(4),STATUS TEXT(3),NOTES TEXT(50))')
    curse.execute('Create table Table_II(TISCODE TEXT(12), EXISTSIN TEXT(4))')
    curse.execute('Create table Checker (TISCODE TEXT(12), EXISTSIN
    TEXT(4),STATUS TEXT(3),NOTES TEXT(50))')
    conn.commit()

    #Upload DBF 1 as a List of Tuples: Returns tuple as ('1021500000','BMP')
    sql = 'SELECT TISCODE,EXISTSIN from '+worksheet2
    curse.execute(sql)
    x = curse.fetchall()

    #Put the fetched Data into Table_II
    for i in x:
    curse.execute('Insert into Table_II (TISCODE,EXISTSIN) values
    (%s,%s)'%(i[0],i[1]))
    conn.commit()
    conn.close()

    TRACEBACK ERROR MSG:
    Traceback (most recent call last):
    File "C:/Documents and Settings/corr1gre/Desktop/Workspace/Python/ArcGIS
    Python/ExistenceChecker and Update/Access Double Checker/Access_SQL.py",
    line 40, in ?
    curse.execute('Insert into Table_II (TISCODE,EXISTSIN) values
    (%s,%s)'%(i[0],i[1]))
    ProgrammingError: ('07001', -3010, '[Microsoft][ODBC Microsoft Access
    Driver] Too few parameters. Expected 1.', 4612)
    --
    View this message in context: http://www.nabble.com/Simple-mx.ODBC-prob-seeks-simple-answer-tf3536661.html#a9871804
    Sent from the Python - python-list mailing list archive at Nabble.com.
    Greg Corradini, Apr 6, 2007
    #1
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Rob Meade

    Newbie seeks a little assistance..

    Rob Meade, Apr 24, 2004, in forum: ASP .Net
    Replies:
    5
    Views:
    330
    Rob Meade
    Apr 25, 2004
  2. =?Utf-8?B?SWxsdXN0cmlz?=

    newbie seeks CustomValidation advice/problem solving...

    =?Utf-8?B?SWxsdXN0cmlz?=, Sep 8, 2005, in forum: ASP .Net
    Replies:
    3
    Views:
    515
    =?Utf-8?B?SWxsdXN0cmlz?=
    Sep 10, 2005
  3. VJL
    Replies:
    0
    Views:
    370
  4. Steve Holden
    Replies:
    1
    Views:
    396
    Dennis Lee Bieber
    Apr 6, 2007
  5. Wes Gamble
    Replies:
    1
    Views:
    153
    Gerardo Santana Gómez Garrido
    Apr 5, 2006
Loading...

Share This Page