INF: Operating System Commands and Control of Flow in ISQL

ID: Q76784


The information in this article applies to:


SUMMARY

ISQL can issue operating system commands by starting a line with two exclamation points (!!) followed by the command. However, these commands are unconditionally run when encountered by ISQL and they cannot take part in the Transact-SQL control-of-flow language.


MORE INFORMATION

For example, if a file called TEST.SQL is created with the following contents


   if 1=2
   !!dir c:\config.sys
   select "One equals two" 

then the operating system command specified on the second line will always be run by ISQL, even though the command is apparently inside an IF control-of-flow condition. Note that the SELECT statement is part of the control of flow and will not be run in this case because 1=2 evaluates to FALSE. When running the following
ISQL /U<login> /P<password> /S<server> /itest.sql

the output that might be returned is:

1> 2>
 The volume label in drive C is GIZMO.
 The Volume Serial Number is 16AA:6729
 Directory of C:\ 

CONFIG   SYS     2054   9-10-91  11:52a
     1 File(s)   28319744 bytes free

2> 3> 

Additional query words: Windows NT


Keywords          : kbtool SSrvISQL SSrvProg SSrvTran_SQL SSrvWinNT 
Version           : 4.2  | 4.2 | 4.2
Platform          : MS-DOS OS/2 WINDOWS 
Issue type        : 

Last Reviewed: March 11, 1999