Sim*_*ith 5 t-sql sql-server bulkinsert
我有一个包含格式化文本的文本文件(txt)(只是换行符,回车符和制表符)它还包含德语字符.
我想在T-SQL中使用批量插入注释将文本文件读入数据库表中的一个字段.
我运行了这个命令:
CREATE TABLE #MyTestTable (
MyData NVARCHAR(MAX)
)
BULK INSERT [#MyTestTable]
FROM 'D:\MyTextFile.txt'
SELECT * FROM #MyTestTable
Run Code Online (Sandbox Code Playgroud)
问题是它将文本文件的每一行读入Temp表中的新行.我希望它将整个文件(格式化和所有)读入一行.
此外,德语字符似乎丢失 - 由结果视图中的不可打印字符默认值替换.
任何想法我怎么能实现这个?
谢谢.
您可以使用ROWTERMINATOR和CODEPAGE参数.默认行终止符是'\ r \n'.对于CODEPAGE,您需要知道原始文件的编码和数据库的默认排序规则.
BULK INSERT [#MyTestTable]
FROM 'D:\MyTextFile.txt'
WITH (ROWTERMINATOR = '\0',
CODEPAGE = 'ACP')
Run Code Online (Sandbox Code Playgroud)
另请参阅http://msdn.microsoft.com/en-us/library/ms188365.aspx
| 归档时间: |
|
| 查看次数: |
10746 次 |
| 最近记录: |