如何使用BTEQ脚本将数据从Excel文件导入Teradata表?

时间:2009-08-26 12:55:05

标签: excel import teradata

我能够使用GUI实用程序Teradata Sql助手使用Excel文件或文本文件中的数据填充表格。但现在我需要使用bteq脚本从excel文件将数据导入teradata表。我一直试图这样做

.IMPORT REPORT

.IMPORT DATA

.IMPORT VARTEXT和我也尝试了其他的东西,但没有用。我在teradataforum中提到了一些答案并用google搜索相同但我的脚本无效。请帮我一个脚本,它将使用BTEQ脚本从excel文件或至少文本文件导入数据。我的脚本如下...

.LOGON XXXX/XXXXXX,XXXX
.import data FILE = D:\XX\XXXX.xls ;
.QUIET ON 
.REPEAT * 
USING COL1  (CHAR(1))
     ,COL2  (CHAR(1))
     ,COL3 (VARCHAR(100))

INSERT INTO DATABASE.TABLE
    ( COL1
     ,COL2
     ,COL3)
VALUES ( :COL1
        ,:COL2
        ,:COL3);
.QUIT

修改

直到现在我来了这么久。我已使用以下代码从逗号分隔的文本文件中成功加载数据。但是如何在Excel中完成它?

.LOGON xxxx/xxxx,xxxx
.IMPORT VARTEXT ',' FILE=xxxxx.TXT;
.QUIET ON 
.REPEAT * 
USING 
(   col1 VARCHAR(2)
    ,col2 VARCHAR(1)
    ,col3 VARCHAR(60)
)        
INSERT INTO database.table
    ( col1
     ,col2
     ,col3)
VALUES ( :col1
    ,:col2
    ,:col3);
.QUIT

示例以逗号分隔的文本文件

1,B,status1
2,B,status2
3,B,status3

等。
如果可能的话,请帮我加载Excel文件。

1 个答案:

答案 0 :(得分:1)

这是不可能的 - Excel是二进制格式。您必须将其保存为Excel中的逗号分隔值文件(.CSV)。您也可以使用链接到Teradata表和电子表格的Access数据库来提出一些复杂的解决方案。