Examples: =================================================================================== 1.Connect to database, create table MY_TEST_TABLE, insert values into MY_TEST_TABLE --- CRT.SQL --- % Let's create table create table MY_TEST_TABLE ( int_fld integer, char_fld char(80) ); // Insert 1-st value insert into MY_TEST_TABLE values ( 1, 'abcdefgh' ); -- Insert 2-nd value insert into MY_TEST_TABLE values ( 2, 'klmnoprs' ); /* Insert 3-rd value */ insert into MY_TEST_TABLE values ( 3, 'tuvwxyz' ); --- End of CRT.SQL --- Start: qsql.exe crt.sql -c "UID=dba;PWD=sql" =============================================================================== 2. Select table MY_TEST_TABLE to DBF file MY_DBF.DBF , indicating every 10 rows -- UNLOAD.SQL -- % Here is select query select * from MY_TEST_TABLE; -- End of SEL.SQL Start: qsql.exe unload.sql -out MY_DBF.DBF -c "UID=dba;PWD=sql" -dbf+ -overout+ ========================================================================= 3. Load records from MY_DBF.DBF into the table MY_TEST_TABLE, additional information -- LOAD.SQL -- INPUT INTO TABLE MY_TEST_TABLE; -- End of LOAD.SQL Start: qsql.exe load.sql -in MY_DBF.DBF -c "UID=dba;PWD=sql" -dbf+ ========================================================================= 4. Load and unload records, no messages -- BOTH.SQL -- %% load from the MY_DBF.DBF INPUT INTO TABLE MY_TEST_TABLE; %% output to the NEW.DBF select * from MY_TEST_TABLE; -- End of BOTH.SQL Start: qsql.exe both.sql -in MY_DBF.DBF -out NEW.DBF -c "UID=dba;PWD=sql" -dbf+ -q+ -b- ========================================================================= 5. Beep and don't stop on SQL error -- ERROR.SQL -- %% Next SQL statements is non valid select * from non_existing_table where no_such_field = 'xyz'; update no_such_table set fld = 111; -- End of ERROR.SQL -- Start: qsql.exe error.sql -c "UID=dba;PWD=sql" /bell+ /stop_on_error- ========================================================================= 6. Commit after every statement, using 'go' word as SQL delimiter -- GO.SQL -- update MY_TEST_TABLE set char_fld = 'new abcd' where char_fld like 'abcd%' go update MY_TEST_TABLE set char_fld = 'old klmn' where char_fld like 'klmn%' go -- End of GO.SQL -- Start: qsql.exe go.sql /c "UID=dba;PWD=sql" /d go /AUTO_COMMIT+ ========================================================================= 7. No commit when exit -- NO_COMM.SQL -- update MY_TEST_TABLE set char_fld = 'no value' -- End of NO_COMM.SQL -- Start: qsql.exe no_comm.sql /c "UID=dba;PWD=sql" /COMMIT_ON_EXIT- ========================================================================= 8. Output to the text file in append mode -- OUT_TEXT.SQL -- select * from MY_TEST_TABLE; -- End of OUT_TEXT.SQL -- Start: qsql.exe /sql out_text.sql /out MY_TEXT.TXT /c "UID=dba;PWD=sql" -DBF- -overout- ========================================================================= 9. Output 'long varchar' fields, using memo fields -- BLOB.SQL -- select * from MY_TEST_TABLE; -- End of BLOB.SQL -- Start: dbaseIII(.dbt) format: qsql.exe /sql blob.sql /out REZ.DBF /BLOB dbaseIII FoxPro (.fpt) format: qsql.exe /sql blob.sql /out REZ.DBF /BLOB fox No memo fields : qsql.exe /sql blob.sql /out REZ.DBF /BLOB char ========================================================================= 10. Read commands from standart console, output to console Start: qsql.exe con /out con (QSQL awaiting for user input, finish text of query with Ctrl-Z) ========================================================================= 11. Errors in command line Start: qsql.exe /out -c"UID=dba;PWD=sql" -NO_SUCH_PARAM+ -DBF* ========================================================================= (C) DTA v.2.0 March 1999 AD