DS2 – Package DS2 et SQLSTMT
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
proc ds2; drop package monpkg; run; quit; proc ds2; package monpkg; declare varchar(100) str; dcl package sqlstmt stmt; method monpkg(varchar(100) str); this.str = str; end; method execmonsql(); dcl int rc; declare varchar(100) champC; stmt = _new_ sqlstmt(str, 'driver=sql; conopts=(DRIVER=ODBC;DB=SQLServerWire;UID=SAS;PWD=PASSWORD)'); stmt.execute(); rc = stmt.fetch(); do while(rc = 0); champC = stmt.getVarChar(3); put champC; rc = stmt.fetch(); end; end; endpackage; data _null_; method init(); declare package monpkg a2('select a,b,"c d" from Customers;'); a2.execmonsql(); end; enddata; run; quit; |