sql-server - BULK INSERT 最后一行失败

标签 sql-server csv bulkinsert

我正在使用 sql server 批量选项导入 CSV,下面是我的 sql 输入。

MAXERRORS = 1000000,
CODEPAGE = 1251,
FIELDTERMINATOR = '~%',
ROWTERMINATOR = '0x0a',
ERRORFILE = 'C:\MyFile_BadData.log'

我的问题是 BULK INSERT 无法加载最后一行数据。

另请注意,sql 批量选项没有报告任何错误。

如果我在文件中添加一个空的换行符,加载工作没有任何问题。

但我担心的是我无法修改 CSV 文件,如果有任何宝贵的意见,请提出建议

最佳答案

当最后一行不以行终止符结尾时会发生这种情况。确保最后一行以行终止符结尾,然后最后一行将被导入。

如果您无法更改生成 CSV 的导出例程,请使用 powershell 或其他工具将行终止符添加到 CSV。如果您无法更改原始文件,请将其复制到可以更改的位置(将其包含在您的 powershell 脚本中)。

关于sql-server - BULK INSERT 最后一行失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48320131/

相关文章:

c# - 受此声明影响的记录数

sql - 计算与日期不同的月份 SQL SERVER

python - 如何在Python中对具有浮点值的列表进行排序?

mysql - 如何在 MySQL 中查看 .csv 上传的进度

java - 将数据批量加载到数据库中

sql-server - SQL Server 文件流与 django-mssql

sql - Exec <存储过程> 非常慢

javascript - 将第一个属性转换为键

使用存储过程的 Azure documentdb 批量插入

couchdb - 使用 Ektorp ExecuteBulk () 和 ExecuteAllOrNothing () API 在 Cloudant CouchDB 中执行批量更新时出错