我想问你如何将表从SAS移动到TeradataSQL Assistant。
我在SAS中所做的就是定义一个libname,然后创建要在Teradata中移动的表。
libname NAME "/path"
proc sql;
create table WORK.EXAMPLE as(
select *
from DATASET
);
quit;
但是,我不知道是否需要以这种方式将SAS连接到Teradata:
libname NAME teradata USER=tduser PASSWORD=tdpasswd SERVER=TDServ ;
proc sql;
connect to teradata (
tdpid=“” user=“” password=“”);
create table WORK.EXAMPLE as
select * from connection to teradata
(select * from DATASET
); quit;
我的问题是:
SELECT * FROM WORK.EXAMPLE
,但它不存在。感谢您的帮助。
答案 0 :(得分:1)
您可以使用LIBNAME语句连接到Terdata
libname mylib TERADATA .... ;
或PROC SQL中的CONNECT语句。
proc sql;
connect to teradata .... ;
实际上,您甚至可以在connect语句中使用先前创建的LIBNAME语句中创建的libref。
libname mylib TERADATA .... ;
proc sql;
connect using mylib ;
通常,我发现使用PROC APPEND将数据复制到Teradata最简单。
libname td TERADATA ... ;
libname mysas 'path to where my SAS datasets live';
proc append base=td.target_table data=mysas.source_table force;
run;
如果目标表不存在,则SAS将创建它。 (在这种情况下,请小心,因为您可能不希望使用默认方式创建默认变量类型或主索引。)