Sql server 将CSV文件导入SQL server时操作停止
我正在尝试将CSV文件导入SQL server数据库,但未成功。我还是sql server的新手 操作已停止Sql server 将CSV文件导入SQL server时操作停止,sql-server,csv,Sql Server,Csv,我正在尝试将CSV文件导入SQL server数据库,但未成功。我还是sql server的新手 操作已停止 初始化数据流任务(成功) 初始化连接(成功) 设置SQL命令(成功) 设置源连接(成功) 设置目标连接(成功) 验证(成功) 信息 警告0x80049304:数据流任务1:警告:无法打开全局共享内存与性能DLL通信;数据流性能计数器不可用。要解决此问题,请以管理员身份或在系统控制台上运行此程序包。 (SQL Server导入和导出向导) 准备执行(成功) 预执行(成功
- 初始化数据流任务(成功)
- 初始化连接(成功)
- 设置SQL命令(成功)
- 设置源连接(成功)
- 设置目标连接(成功)
- 验证(成功)
信息
- 警告0x80049304:数据流任务1:警告:无法打开全局共享内存与性能DLL通信;数据流性能计数器不可用。要解决此问题,请以管理员身份或在系统控制台上运行此程序包。 (SQL Server导入和导出向导)
- 准备执行(成功)
- 预执行(成功)
信息
- 信息0x402090dc:数据流任务1:已开始处理文件“D:\test.csv”。 (SQL Server导入和导出向导)
- 执行(错误)
信息
- 错误0xc002f210:删除表SQL任务1:执行查询“删除表[dbo]”。[测试] 失败,出现以下错误:“无法删除表'dbo.test',因为它不存在或您没有权限。”。可能的失败原因:查询问题、“ResultSet”属性设置不正确、参数设置不正确或连接建立不正确。 (SQL Server导入和导出向导)
- 错误0xc02020a1:数据流任务1:数据转换失败。“Code”列的数据转换返回状态值4和状态文本“文本被截断或目标代码页中的一个或多个字符不匹配”。 (SQL Server导入和导出向导)
- 错误0xc020902a:数据流任务1:“输出列”“代码”“(38)”由于发生截断而失败,“输出列”“代码”“(38)”上的截断行处置指定截断失败。在指定组件的指定对象上发生截断错误。 (SQL Server导入和导出向导)
- 错误0xc0202092:数据流任务1:处理数据行21上的文件“D:\test.csv”时出错。 (SQL Server导入和导出向导)
- 错误0xc0047038:数据流任务1:SSIS错误代码DTS_E_PRIMEOUTPUTFAILED。组件“Source-test_csv”(1)上的PrimeOutput方法返回错误代码0xC0202092。当管道引擎调用PrimeOutput()时,组件返回了故障代码。故障代码的含义由组件定义,但错误是致命的,管道停止执行。在此之前可能会发布错误消息,其中包含有关故障的更多信息。 (SQL Server导入和导出向导)
- 复制到[dbo].[test](已停止)
- 执行后(成功)
信息
- 信息0x402090dd:数据流任务1:文件“D:\test.csv”的处理已结束。 (SQL Server导入和导出向导)
- 信息0x402090df:数据流任务1:已开始在“组件”目标-测试“(70)”中插入数据的最终提交。 (SQL Server导入和导出向导)
- 信息0x402090e0:数据流任务1:在“组件”目标-测试“(70)”中插入数据的最终提交已结束。 (SQL Server导入和导出向导)
- 信息0x4004300b:数据流任务1:“组件”目标-测试(70)写入了0行。 (SQL Server导入和导出向导)
VARCHAR(MAX)
——这将为您提供2 GB的空间!这应该足够了
另外,“代码”列似乎包含SQL Server中当前所选代码页中不存在的字符-在导入之前,您可以去掉这些额外的特殊字符吗?如果没有,您可能需要对目标列的数据类型使用NVARCHAR(MAX)
,以便允许它对其字符使用Unicode(从而支持输入字符串中最奇特的字符)
“文本被截断或一个或多个
目标中没有匹配的字符
代码页。“
即使在以下情况下也可能发生:
- 源平面文件是一个UNICODE文件
- 您的目标列定义为nvarchar(max)李>
Error 0xc02020a1: Data Flow Task 1: Data conversion failed. The data conversion for column "target" returned status value 4 and status text "Text was truncated or one or more characters had no match in the target code page.".