如何将表从SAS移动到Teradata SQL Assistant



我想问您如何将表从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;

我的问题是:

  1. 在第二个libname中,我应该在哪里考虑路径
  2. 我应该考虑上面的哪一个代码,为什么
  3. 如何在Teradata中"调用"此表?我尝试使用SELECT * FROM WORK.EXAMPLE,但它不存在

感谢您的帮助。

您可以使用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将创建它。(在这种情况下,请小心,因为您可能不想要默认变量类型或将以这种方式创建的主索引。(。

相关内容

  • 没有找到相关文章

最新更新