我现在正在使用它的工作,一个proc sql连接到我的数据库(访问.accdb)。到现在为止我只用它来做SELECT查询。这是一个有用的例子,我也是这样做的。
proc sql;
/* create an ODBC pass-through connection using the Microsoft Office Access 2007 .accdb driver */
connect to ODBC as savesdb
(required="driver=Microsoft Access Driver (*.mdb, *.accdb); dbq=&dir_BD.;");
create table MYTABLE as select * from connection to savesdb(select MYID from ACCESSTABLE);
/* close the pass-through connection */
disconnect from savesdb;
quit;
现在我想执行INSERT INTO查询。我知道下一个代码正在运行
execute( INSERT INTO ACCESSTABLE ( MYID ) VALUES ( 1 )) by savesdb;
我想在INSERT INTO中指定插入数据集中的值。换句话说,我有一个包含4条记录的数据集,所以我想用数据集中的值将我的插入调用4次。
有没有办法这样做?
答案 0 :(得分:0)
您需要做的就是在数据步骤中遍历DataSet并将列读取到宏变量..每列一个var。
然后使用这些宏变量调用proc sql代码作为宏定义的输入,宏定义将使用完全传递插入到DB中。
然而正如指出libref是更容易的方法。
谢谢, 和Manish