Chapter Contents |
Previous |
Next |
CV2ODBC Procedure |
Example 1 - Converting an AS/400 View Descriptor |
libname as4acc 'd:\lib\as4\acc'; libname as4lib 'd:\lib\as4\lib'; proc cv2odbc dbms=as400; from view=as4acc.invoice; to view=as4lib.V8_invoice; user='testuser'; password='testpass'; dsn='IBM AS/400 Database'; save ='as4_invoice.sas'; replace all; submit; run;
PROC CV2ODBC generates the following PROC SQL statements.
PROC SQL DQUOTE=ANSI; CREATE VIEW AS4LIB.V8_INVOICE AS SELECT "INVOICENUM" AS INVOICE INFORMAT= 11.0 FORMAT= 11.0 LABEL='INVOICENUM' , "BILLEDTO" AS CUSTOMER INFORMAT= $8. FORMAT= $8. LABEL= 'BILLEDTO' , "AMTBILLED" AS AMOUNT INFORMAT= DOLLAR20.2 FORMAT= DOLLAR20.2 LABEL= 'AMTBILLED' , "BILLEDBY" AS BILLEDBY INFORMAT= 11.0 FORMAT= 11.0 LABEL= 'BILLEDBY' , "BILLEDON" AS BILLEDON INFORMAT= MMDDYY8. FORMAT= MMDDYY8. LABEL= 'BILLEDON' , "PAIDON" AS PAIDON INFORMAT= DATE7. FORMAT= DATE7. LABEL= 'PAIDON' FROM _CVLIB_."INVOICE" (DBCONDITION = "WHERE PAIDON IS NOT NULL " DBINDEX = NO DBCOLUMNS = 'INVOICENUM, BILLEDTO, AMTBILLED, BILLEDBY, BILLEDON, PAIDON' SASDATEFMT = ("BILLEDON"= MMDDYY8. "PAIDON"= DATE7.) ) USING LIBNAME _CVLIB_ ODBC AUTOCOMMIT = YES NOPROMPT="DSN=IBM AS/400 Database; UID=testuser;PWD=testpass;NAM=1;XDYNAMIC=0; LIBVIEW=0;DBQ=SASDEMO" ; QUIT;
Example 2 - Converting an MS SQL Server View Descriptor |
In this example, PROC CV2ODBC converts the Version 6 MSQACC.ORDER view descriptor to an ODBC view, MSQLIB.ORDERS. The PROC SQL statements that are generated by PROC CV2ODBC are saved to an external file named MSSQL.SAS, but are not automatically submitted.
libname msqacc 'd:\lib\msq\acc'; libname msqlib 'd:\lib\msq\lib'; proc cv2odbc dbms=mssql; from view = msqacc.order (pw=testpass); to view = msqlib.orders; user = 'testuser'; pass = 'testpass'; dsn = 'Microsoft SQL Server Database'; save = 'mssql.sas'; replace all; run;
PROC CV2ODBC generates the following PROC SQL statements.
PROC SQL DQUOTE=ANSI; CREATE VIEW MSQLIB.ORDERS(PW=TESTPASS) AS SELECT "ordernum" AS ORDERNUM INFORMAT= 11.0 FORMAT= 11.0 LABEL= 'ordernum' , "fabriccharges" AS AMOUNT INFORMAT= DOLLAR22.2 FORMAT= DOLLAR22.2 LABEL= 'fabriccharges' , "shipto" AS SHIPTO INFORMAT= $8. FORMAT= $8. LABEL= 'shipto' , "dateordered" AS DATEORDE INFORMAT= DATETIME21.2 FORMAT= DATETIME21.2 LABEL= 'dateordered' , "shipped" AS SHIPDATE INFORMAT= MMDDYY10. FORMAT= MMDDYY10. LABEL= 'shipped' , "takenby" AS TAKENBY INFORMAT= 11.0 FORMAT= 11.0 LABEL= 'takenby' , "processedby" AS PROCESSE INFORMAT= 11.0 FORMAT= 11.0 LABEL= 'processedby' FROM _CVLIB_."orders" (DBCONDITION = "WHERE (takenby=456910 or takenby=234967 or dateordered='1988-11-03' or dateordered='12/23/1988') and shipped is not null" SASDATEFMT = ("dateordered"=DATETIME21.2 "shipped"=MMDDYY10.) ) USING LIBNAME _CVLIB_ ODBC PRESERVE_TAB_NAMES = YES NOPROMPT="DSN=Microsoft SQL Server Database; SERVER=dbipc1.pc.sas.com; UID=testuser;PWD=testpass;DATABASE=sample"; QUIT;
Chapter Contents |
Previous |
Next |
Top of Page |
Copyright 1999 by SAS Institute Inc., Cary, NC, USA. All rights reserved.