How to Use SQL Pass-Through to Send Results to a Table

ID: Q138998

3.00 WINDOWS kbinterop kbhowto

The information in this article applies to:

SUMMARY

The FoxPro 2.x Connectivity Kit allows you to send the results of the DBExec() function to a table by using the DBSetOpt() function and setting the UseTable property of the connection to 1. Visual FoxPro has no property that causes the results of the SQLExec() function to be sent to a table.

MORE INFORMATION

The results of the SQLExec() function are always returned to a cursor. The default cursor name is Sqlresult. To send the results to a table, use the COPY TO command after calling the SQLExec() function. The COPY TO command creates a table from the Sqlresult cursor.

The following example creates a table called Temp.dbf from the results of a SQLExec() function. Create a new program containing the following code:

   datasrcname='test'    &&Data Source Name - from ODBC administrator
   userid='sa'           &&User ID
   pword=''              &&User Password

   ** Establish a connection **
   handle=SQLConnect(datasrcname, userid, pword)

   ** Execute query **
   =SQLExec(handle, 'select * from authors')

   ** Copy results to a table **
   COPY TO TEMP.DBF

   ** Close the cursor **
   SELECT Sqlresult
   USE

   ** End the connection **
   =SQLDisconnect(handle)

When this program is run, the results of the SQLEXEC() function are stored in the Temp.dbf table.

Additional reference words: 3.00 VfoxWin kbvfp300 kbvfp300b kbvfp500 kbvfp500a kbvfp600 KBCategory: kbinterop kbhowto KBSubcategory: FxinteropOdbc

Keywords          : FxinteropOdbc 
Version           : WINDOWS: 3.0,3.0b,5.0,5.0a,6.0
Platform          : WINDOWS

Last Reviewed: August 18, 1998