iSQL - Blank line at the end of the iSql output file

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • yanakal@gmail.com

    iSQL - Blank line at the end of the iSql output file

    Hi,
    I'm using isql to query data and output the same to a flat file.
    The isql has the following command options ' -h-1 -w500 -n -b -s"" '.
    In the SQL_CODE, the first two lines before the select statement are
    use dbname
    set nocount on
    go
    When I run this, an additional blank line is put into the output file.
    Actually, there are two lines after the last result set in the output
    file. This file is being fed into another system and the blank line is
    causing validation issues.
    How can I supress this blank line?

    This script is run from windows and the isql is called from a bat
    script.
    Batch script ...
    =============== =============== =============== =============
    .....
    isql -Uuserid -Ppassword -Sserver -i"%SQL_CODE% " -h-1 -w500 -n -b -s""[color=blue][color=green]
    >>"%OUT_FILE% "[/color][/color]
    IF ERRORLEVEL 0 SET RC=0
    IF ERRORLEVEL 1 exit 4
    =============== =============== =============== =============
    SQL code ...
    =============== =============== =============== =============
    use punclaim
    set NOCOUNT ON
    GO
    select * from XYZ;
    GO
    =============== =============== =============== =============

    Your help is greatly appreciated.
    Yash

  • Erland Sommarskog

    #2
    Re: iSQL - Blank line at the end of the iSql output file

    (yanakal@gmail. com) writes:[color=blue]
    > I'm using isql to query data and output the same to a flat file.
    > The isql has the following command options ' -h-1 -w500 -n -b -s"" '.
    > In the SQL_CODE, the first two lines before the select statement are
    > use dbname
    > set nocount on
    > go
    > When I run this, an additional blank line is put into the output file.
    > Actually, there are two lines after the last result set in the output
    > file. This file is being fed into another system and the blank line is
    > causing validation issues.
    > How can I supress this blank line?[/color]

    You would have to pipe the output to something that strips the last line.

    But is there any special reason you use ISQL and not BCP?



    --
    Erland Sommarskog, SQL Server MVP, esquel@sommarsk og.se

    Books Online for SQL Server SP3 at
    Accelerate your AI application's time to market by harnessing the power of your own data and the built-in AI capabilities of SQL Server 2025, the enterprise database with best-in-class security, performance and availability.


    Comment

    • John Bell

      #3
      Re: iSQL - Blank line at the end of the iSql output file

      Hi

      You may want to try passing this through findstr e.g.

      osql -E -d punclaim -ifred.sql -h-1 -w500 -n -b | findstr /V /r /c:"^$" >
      fred.txt

      Specifying the -d parameter to osql/isql will remove the need for the USE
      statement in your SQL script, alternatively the SQL statements:

      SET NOCOUNT ON
      select * from punclaim..XYZ

      There will still be a final carrage return, but not the blank line.

      John

      <yanakal@gmail. com> wrote in message
      news:1127507732 .803909.296490@ z14g2000cwz.goo glegroups.com.. .[color=blue]
      > Hi,
      > I'm using isql to query data and output the same to a flat file.
      > The isql has the following command options ' -h-1 -w500 -n -b -s"" '.
      > In the SQL_CODE, the first two lines before the select statement are
      > use dbname
      > set nocount on
      > go
      > When I run this, an additional blank line is put into the output file.
      > Actually, there are two lines after the last result set in the output
      > file. This file is being fed into another system and the blank line is
      > causing validation issues.
      > How can I supress this blank line?
      >
      > This script is run from windows and the isql is called from a bat
      > script.
      > Batch script ...
      > =============== =============== =============== =============
      > ....
      > isql -Uuserid -Ppassword -Sserver -i"%SQL_CODE% " -h-1 -w500 -n -b -s""[color=green][color=darkred]
      >>>"%OUT_FILE %"[/color][/color]
      > IF ERRORLEVEL 0 SET RC=0
      > IF ERRORLEVEL 1 exit 4
      > =============== =============== =============== =============
      > SQL code ...
      > =============== =============== =============== =============
      > use punclaim
      > set NOCOUNT ON
      > GO
      > select * from XYZ;
      > GO
      > =============== =============== =============== =============
      >
      > Your help is greatly appreciated.
      > Yash
      >[/color]


      Comment

      • yanakal@gmail.com

        #4
        Re: iSQL - Blank line at the end of the iSql output file

        John, Thank you very much. The solution you suggested worked.

        Yash

        Comment

        Working...