如何使用Python将文本文件中的数据插入SQL Server表?

2024-04-24 23:08:17 发布

您现在位置:Python中文网/ 问答频道 /正文

import pyodbc
import csv
conn = pyodbc.connect('Driver=ODBC Driver 17 for SQL Server;'
                      'Server=SIS10647\MSSQLSERVER14;'
                      'Database=LeelaVenkatesh;'
                      'Trusted_Connection=yes;')

cursor = conn.cursor()

cursor.execute('''

               CREATE TABLE employee
               (
               empid int,
               Name nvarchar(50)
               )

               ''')

with open('C:\PYTHON\Textfiles/1.txt') as f:
    reader = csv.reader(f)
    for row in reader:
        cursor.execute("""INSERT INTO employee(empid,name)
                          VALUES(%s, %s)
                       """, row)
conn.commit()
cursor.close()
print("Done")

我得到以下错误

cursor.execute("""INSERT INTO employee(empid,name) pyodbc.ProgrammingError: ('The SQL contains 0 parameter markers, but 1 parameters were supplied', 'HY000')

文本文件数据看起来像

empid|Name
1|'Ram'

Tags: csvnameimportforexecutesqlserverdriver
1条回答
网友
1楼 · 发布于 2024-04-24 23:08:17
cursor.execute("""INSERT INTO employee(empid,name)
                  VALUES(?, ?)
                  """, row)

如果这不起作用,假设行是数组,请尝试以下操作:

cursor.execute("""INSERT INTO employee(empid,name)
                  VALUES(?, ?)
                  """, row[0], row[1])

相关问题 更多 >