mrsamkhar
mrsamkhar

Reputation: 77

insert into sqlite table python list

I have a list

mylist = ["18/10/2018","35029128","4T1BF28B6YU095317","TOYOTA","AVALON XL","2000","525","CA","HAYWARD","CA - HAYWARD","3","1200","PDT","Automobile","SEDAN 4D","GRAY","MINOR DENT/SCRATCHES"," ","CA","DQ","YES","D","240778","E","0","0","3.0L 6","Front-wheel Drive","AUTOMATIC","GAS","6","Run & Drive Verified","On Minimum Bid","0","","94545","USA","USD","SF007","N","0","XL","AUCTION DEALER SERVICES LLC"] and function that inserts this list into database:

def insert_data(self, data):
    sql_insert_data = """INSERT INTO copart(salesdata,lot,vin,make,model,year,saleprice,locstate,loccity,yardname,yardNumber,saletime,timezone,vehicle,bodystyle,color,damage,seconddamage,saletitlestate,saletitletype,haskey,lotcond,odometr,odometrtype,estvalue,repair,engine,drive,transmision,fule,cylinders,runsdrives,salestatus,startbid,specialnotes,loczip,loccountry,currency,gridrow,offer,buynow,trim,seller) VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)
    """
    cur = self.conn.cursor()
    try:
        cur.execute(sql_insert_data, data)
    except Error as e:
        print(e)
    print("inserted")

when i execute script, it ends without error but no data is inserted in database. what is wrong in my code?

Upvotes: 0

Views: 47

Answers (1)

Rakesh
Rakesh

Reputation: 82765

You need to commit after executing the sql.

Ex:

def insert_data(self, data):
    sql_insert_data = """INSERT INTO copart(salesdata,lot,vin,make,model,year,saleprice,locstate,loccity,yardname,yardNumber,saletime,timezone,vehicle,bodystyle,color,damage,seconddamage,saletitlestate,saletitletype,haskey,lotcond,odometr,odometrtype,estvalue,repair,engine,drive,transmision,fule,cylinders,runsdrives,salestatus,startbid,specialnotes,loczip,loccountry,currency,gridrow,offer,buynow,trim,seller) VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)
    """
    cur = self.conn.cursor()
    try:
        cur.execute(sql_insert_data, data)
        self.conn.commit()
    except Error as e:
        print(e)
    print("inserted")

Upvotes: 2

Related Questions