我正在嘗試使用pymssql將文本文件導(dǎo)入SQL Server 2014(我是python的初學(xué)者,但是如果您了解一點(diǎn)SQL,似乎這是最簡(jiǎn)單的方法)。SQL Server與我要導(dǎo)入的文件位于同一臺(tái)計(jì)算機(jī)上。這是我當(dāng)前的代碼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()我在互聯(lián)網(wǎng)上找到了一些編碼示例,并嘗試了所有這些示例,但都無(wú)濟(jì)于事...我一直以以下錯(cuò)誤告終: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') 任何幫助將非常感激!
1 回答

ibeautiful
TA貢獻(xiàn)1993條經(jīng)驗(yàn) 獲得超6個(gè)贊
對(duì)于T-SQL,BULK INSERT語(yǔ)句的FROM子句中的文件路徑需要用單引號(hào)引起來(lái),但是它也包含反斜杠,因此我們需要使用Python原始字符串(r"..."
),因此
.format(r"'C:\Users\thomsog1\Desktop\TM Tool\Test\SQL\Inputs\OD_List.txt'")
添加回答
舉報(bào)
0/150
提交
取消