如何使用BTEQ导入从excel文件导入数据到teradata表?

时间:2009-08-26 13:52:11

标签: excel teradata

我尝试使用BTEQ导入从文件中导入数据。

我在执行此操作时面临奇怪的错误

像:

如果我使用文本文件作为输入数据文件','作为分隔符作为提交的分隔符我得到错误如下:

***失败2673源宗地长度与定义的数据不匹配。

如果我使用EXCEL文件作为输入数据文件我得到如下错误:

*增长缓冲区为53200 * 错误:导入数据大小与字节长度不一致。 原因可能是: 1)进口数据与进口报告 2)输入数据不正确 3)导入文件已到达文件结尾。 ***警告:数据不足。

请使用txt文件作为输入数据文件给出BTEQ导入的语法,如果我们使用EXCEL文件作为输入数据文件,还要提供语法

输入数据文件也有任何特定格式,可以正确读取数据。 如果是这样,请告诉我有关的信息。

提前致谢:)


修改

抱歉没有先发布脚本。 我是teradata的新手,还没有探索其他工具。 我被要求为BTEQ import编写脚本

.LOGON TDPD / XXXXXXX,XXXXXX
.import VARTEXT','FILE = D:\ cc \ PDATA.TXT
.QUIET ON .REPEAT *
使用
COL1(VARCHAR(2))
,COL2(VARCHAR(1))
,COL3(VARCHAR(56))

插入进入(COL1
,COL2
,COL3)
值(:COL1
,:COL2
,:COL3);
.QUIT
我执行了上面的脚本,并使用txt(用逗号分隔文件)文件并将数据类型作为varchar成功。

示例输入txt文件:
1,B,helloworld1
2,B,helloworld2
3,d,helloworld1
12,B,helloworld1

我也尝试使用制表符(\ t)作为字段分隔符来执行相同的操作,但它会产生相同的旧错误。
问)这是否仅适用于逗号分隔的txt文件?

请告诉我在哪里可以找到BTEQ手册......

非常感谢

1 个答案:

答案 0 :(得分:3)

你可以发布你的BTEQ脚本吗?我还可以问你为什么使用BTEQ而不是FastLoad或MultiLoad?

文本文件错误可能是由于using子句中声明的数据类型造成的。我认为在读取分隔输入时需要将它们声明为VARCHAR(例如,为INTEGER字段声明为VARCHAR(10)。)

对于Excel,我在BTEQ手册中找不到任何说BTEQ可以处理.xls文件的内容。


对于制表符分隔文件,您是否这样做(这是下面的制表符)?

.import vartext '   '

还是这个?

.import vartext '\t'

以前的作品,后者没有。

我的BTEQ手册在我的工作机器上。 “BTEQ手册”的第一个谷歌搜索结果之一应该在网上产生一个。