gpt4 book ai didi

python - 使用 pymssql 将文本文件批量插入 SQL Server

转载 作者:行者123 更新时间:2023-12-01 01:48:33 25 4
gpt4 key购买 nike

我正在尝试使用 pymssql 将文本文件导入 SQL Server 2014(我是 python 的初学者,但如果您了解一点 SQL,这似乎是最简单的方法)。 SQL 服务器与我导入的文件位于同一台计算机上。

这是我当前的代码

SQLCon = pymssql.connect(host=ServerNm,database=DatabaseNm)
Cursor = SQLCon.cursor()

BulkInsert = '''
BULK INSERT OD_List
FROM {}
WITH (
FIRSTROW=2
, FIELDTERMINATOR=','
, ROWTERMINATOR='\n'
)
'''.format("'C:\Users\thomsog1\Desktop\TM Tool\Test\SQL\Inputs\OD_List.txt'")

Cursor.execute(BulkInsert)
SQLCon.commit()

我在互联网上找到了一些编码示例,并尝试了所有这些都无济于事...我总是遇到以下错误:

File "pymssql.pyx", line 467, in pymssql.Cursor.execute (pymssql.c:7561)      
pymssql.OperationalError: (4861, 'Cannot bulk load because the file
"C:\\Users\thomsog1\\Desktop\\TM Tool\\Test\\SQL\\Inputs\\OD_List.txt" could
not be opened. Operating system error code 123(The filename, directory name,
or volume label syntax is incorrect.).DB-Lib error message 20018, severity
16:\nGeneral SQL Server error: Check messages from the SQL Server\n')

任何帮助将不胜感激!

最佳答案

对于 T-SQL,BULK INSERT 语句的 FROM 子句中的文件路径需要用单引号括起来,但它也包含反斜杠,因此我们需要使用 Python 原始字符串 (r"... “),因此

.format(r"'C:\Users\thomsog1\Desktop\TM Tool\Test\SQL\Inputs\OD_List.txt'")

关于python - 使用 pymssql 将文本文件批量插入 SQL Server,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50978661/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com