作者shga (我爱慢慢跑)
看板Database
标题[SQL ] SQL Server 资料汇入错误
时间Sun May 17 21:13:42 2009
ID AGE SEX Drug_Code Drug_Name Drug_dose Week ....
84222 27 F B020932221 LIDOCAINE 1 2
84222 27 F N001043100 MEFENAMIC ACID 2 2
84222 27 F B020932221 LIDOCAINE 1 4
目前为分析药物的相关资料,资料类型如上述。
我拿到的text档案,竟然有3.45g,大概7千多万笔资料。
目前例如SQL server 2008汇入时,结果发生。
不过并不是栏位设定的问题,我也不知道错误在哪。
- 正在执行 (错误)
讯息
错误 0xc02020a1: 资料流程工作 1: 资料转换失败。资料行 "资料行 4" 的资料转换传
回状态值 4 和状态文字 "文字已截断,或者一或多个字元在目标字码页里没有相符者。"
。 (SQL Server 汇入和汇出精灵)
错误 0xc020902a: 资料流程工作 1: 因为发生截断,且 "输出资料行 "资料行 4"
(26)" 的截断资料列配置指定在截断时失败,所以 "输出资料行 "资料行 4" (26)" 失败
。在指定的元件上,指定的物件发生截断错误。 (SQL Server 汇入和汇出精灵)
错误 0xc0202092: 资料流程工作 1: 处理资料列 -6881358312017756103 上的档案
"C:\2006.txt" 时发生错误。 (SQL Server 汇入和汇出精灵)
错误 0xc0047038: 资料流程工作 1: SSIS 错误码 DTS_E_PRIMEOUTPUTFAILED。在 元件
"来源 - OPD2006_txt" (1) 上的 PrimeOutput 方法传回错误码 0xC0202092。当管线引
擎呼叫 PrimeOutput() 时,元件传回失败码。在此之前可能已公布过错误讯息,说明有
关此失败的详细资讯。 (SQL Server 汇入和汇出精灵)
所以之後就把资料转到Mysql。先建立talbe,然後用load data转过去是成功的。
目前预计拆成两个Table
将ID AGE SEX 另存一个table,然後将ID Drug_Code Drug_Name Drug_dose week存成
另外一个table。再来就来研究药物的相关性。
(1)想请问的是,为什麽会汇入错误呢?
在mysql 我是用load data local infile'C:/2006.txt' into table ddi fields
terminated by '|';
如果是在 SQL server 该如何下指令呢 (不知道怎麽下,所以只会用SQL server的汇入资
料)
(2)另外目前在自己电脑上处理的速度有点过慢,可能之後再请朋友把资料放在伺服器处理。
想请问如果处理医药相关资料,大家都如何处理呢?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.129.77.5
※ 编辑: shga 来自: 140.129.77.5 (05/17 21:15)
1F:推 bobju:可能是资料包含到跟栏位分隔字元相同的字元.造成parser误判. 05/17 21:55
2F:推 TonyQ:文字已截断 这讯息超级眼熟 , 通常是塞入资料>栏位大小. 05/18 01:05
3F:→ shga:的确是我没有把栏位加大 05/18 21:58