2024-05-23 17:43:58 发布
网友
我想将CSV文件中的数据插入到我之前创建的表中。 假设我创建了一个名为T的表 csv_文件如下:
Last,First,Student Number,Department Gonzalez,Oliver,1862190394,Chemistry Roberts,Barbara,1343146197,Computer Science Carter,Raymond,1460039151,Philosophy
以shared by Mumpo为基础。在
在将CSV插入到sqlserver时,这对我很有效。只需提供连接详细信息、文件路径和要写入的表。唯一需要注意的是,您的表必须已经存在,因为此代码将在现有表中插入CSV。在
import pyodbc import csv # DESTINATION CONNECTION drivr = "" servr = "" db = "" username = "" password = "" my_cnxn = pyodbc.connect('DRIVER={};SERVER={};DATABASE={};UID={};PWD={}'.format(drivr,servr,db,username,password)) my_cursor = cnxn.cursor() def insert_records(table, yourcsv, cursor, cnxn): #INSERT SOURCE RECORDS TO DESTINATION with open(yourcsv) as csvfile: csvFile = csv.reader(csvfile, delimiter=',') header = next(csvFile) headers = map((lambda x: x.strip()), header) insert = 'INSERT INTO {} ('.format(table) + ', '.join(headers) + ') VALUES ' for row in csvFile: values = map((lambda x: "'"+x.strip()+"'"), row) b_cursor.execute(insert +'('+ ', '.join(values) +');' ) b_cnxn.commit() #must commit unless your sql database auto-commits table = <sql-table-here> mycsv = '...T.csv' # SET YOUR FILEPATH insert_records(table, mycsv, my_cursor, my_cnxn) cursor.close()
以shared by Mumpo为基础。在
在将CSV插入到sqlserver时,这对我很有效。只需提供连接详细信息、文件路径和要写入的表。唯一需要注意的是,您的表必须已经存在,因为此代码将在现有表中插入CSV。在
相关问题 更多 >
编程相关推荐