python多條插入問題

2022-06-19 23:03:13 字數 1091 閱讀 8633

多條插入用excutemany(listtuple)

#coding=utf-8

import

mysqldb

import

traceback

sqlstr

= "insert into table1 values(%s,%s,%s,%s);"

#sql模板字串 如果懶的寫每乙個屬性對應的字段,那麼後面的s%的個數要和資料庫表中屬性個數一樣(所有型別,都用%s表示)

lists=[[1,2,3,4],[2,3,4,5],[3,4,5,6]]

datalist= [tuple(x) for x in lists] # 引數是乙個個元組,list裡巢狀tuple

class

mymysql(object):

def __init__(self):

self.conn =mysqldb.connect(

host='127.0.0.1',

port = 3306,

user = 'root',

passwd = '123456',

db = 'xtp3')

def insert_sql(self,sqlstring,data):

cur =self.conn.cursor()

try:

cur.executemany(sqlstring,data)

self.conn.commit()

except:

self.conn.rollback()

traceback.print_exc()

finally

: cur.close()

if __name__ == '__main__':

m =mymysql()

m.insert_sql(sqlstr,datalist)

excute和excutemany速度對比

參考:

MySQL插入多條記錄

原文 nsert into users name,age values 姚明 25 比爾.蓋茨 50 火星人 600 上面的insert 語句向users表中連續插入了3條記錄。值得注意的是,上面的insert語句中的values後必須每一條記錄的值放到一對 中,中間使用 分割。假設有乙個表tabl...

oracle插入多條語句

insert into 表名 欄位1,欄位2 select 一 二 from dual union all select 三 四 from dual union all select 五 六 from dual union all select 七 八 from dual union all sel...

SqlServer 插入多條資料

插入一條資料使用default關鍵字 insert into student studentno,loginpwd,studentname,gradeid,phone,address,borndate,email values 001 12345 張三 男 1,1234567890123 defau...