Blobs in SQL Server

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Connie

    Blobs in SQL Server

    We have a blob in one table that is storing pdf files. I need to
    write a select query that will grab that column and write those *.pdf
    files out to a location on my hard drive. Does anyone know how that
    can be done? All suggestions would be greatly appreciated....

  • Erland Sommarskog

    #2
    Re: Blobs in SQL Server

    Connie (csawyer@rwbair d.com) writes:
    We have a blob in one table that is storing pdf files. I need to
    write a select query that will grab that column and write those *.pdf
    files out to a location on my hard drive. Does anyone know how that
    can be done? All suggestions would be greatly appreciated....
    I have a very quick sketch for this on
    http://www.sommarskog.se/blobload.txt.


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

    Books Online for SQL Server 2005 at

    Books Online for SQL Server 2000 at

    Comment

    • Connie

      #3
      Re: Blobs in SQL Server

      On Feb 15, 4:26 pm, Erland Sommarskog <esq...@sommars kog.sewrote:
      Connie (csaw...@rwbair d.com) writes:
      We have a blob in one table that is storing pdf files. I need to
      write a select query that will grab that column and write those *.pdf
      files out to a location on my hard drive. Does anyone know how that
      can be done? All suggestions would be greatly appreciated....
      >
      I have a very quick sketch for this onhttp://www.sommarskog. se/blobload.txt.
      >
      --
      Erland Sommarskog, SQL Server MVP, esq...@sommarsk og.se
      >
      Books Online for SQL Server 2005 athttp://www.microsoft.c om/technet/prodtechnol/sql/2005/downloads/books...
      Books Online for SQL Server 2000 athttp://www.microsoft.c om/sql/prodinfo/previousversion s/books.mspx
      Here is some good information that I found in my search to complete
      the above task, I am posting as this may help others working with
      blobs:
      In this article I want to show, how you can copy a single text or
      image value into or out of SQL Server with textcopy.exe utility. You
      can find this utility in the directory containing the standard SQL
      Server EXE files (C:\Mssql\Binn by default for SQL Server 6.5 and C:
      \Mssql7\Binn by default for SQL Server 7.0).

      The Textcopy utility is not described in SQL Server Books Online, but
      you can get its description by typing textcopy /? from the command
      prompt. This is the description:

      Copies a single text or image value into or out of SQL Server. The
      value
      is a specified text or image 'column' of a single row (specified by
      the
      "where clause") of the specified 'table'.

      If the direction is IN (/I) then the data from the specified 'file' is
      copied into SQL Server, replacing the existing text or image value. If
      the
      direction is OUT (/O) then the text or image value is copied from
      SQL Server into the specified 'file', replacing any existing file.

      TEXTCOPY [/S [sqlserver]] [/U [login]] [/P [password]]
      [/D [database]] [/T table] [/C column] [/W"where clause"]
      [/F file] [{/I | /O}] [/K chunksize] [/Z] [/?]

      /S sqlserver The SQL Server to connect to. If 'sqlserver' is
      not
      specified, the local SQL Server is used.
      /U login The login to connect with. If 'login' is not
      specified,
      a trusted connection will be used.
      /P password The password for 'login'. If 'password' is not
      specified, a NULL password will be used.
      /D database The database that contains the table with the
      text or
      image data. If 'database' is not specified, the
      default
      database of 'login' is used.
      /T table The table that contains the text or image value.
      /C column The text or image column of 'table'.
      /W "where clause" A complete where clause (including the WHERE
      keyword)
      that specifies a single row of 'table'.
      /F file The file name.
      /I Copy text or image value into SQL Server from
      'file'.
      /O Copy text or image value out of SQL Server into
      'file'.
      /K chunksize Size of the data transfer buffer in bytes.
      Minimum
      value is 1024 bytes, default value is 4096 bytes.
      /Z Display debug information while running.
      /? Display this usage information and exit.

      You will be prompted for any required options you did not specify.




      You can use the following stored procedure to simplify the using of
      textcopy utility:

      CREATE PROCEDURE sp_textcopy (
      @srvname varchar (30),
      @login varchar (30),
      @password varchar (30),
      @dbname varchar (30),
      @tbname varchar (30),
      @colname varchar (30),
      @filename varchar (30),
      @whereclause varchar (40),
      @direction char(1))
      AS
      DECLARE @exec_str varchar (255)
      SELECT @exec_str =
      'textcopy /S ' + @srvname +
      ' /U ' + @login +
      ' /P ' + @password +
      ' /D ' + @dbname +
      ' /T ' + @tbname +
      ' /C ' + @colname +
      ' /W "' + @whereclause +
      '" /F ' + @filename +
      ' /' + @direction
      EXEC master..xp_cmds hell @exec_str




      This is the example to copy image into SQL Server database pubs, table
      pub_info, column name logo from picture.bmp file where pub_id='0736':

      sp_textcopy @srvname = 'ServerName',
      @login = 'Login',
      @password = 'Password',
      @dbname = 'pubs',
      @tbname = 'pub_info',
      @colname = 'logo',
      @filename = 'c:\picture.bmp ',
      @whereclause = " WHERE pub_id='0736' ",
      @direction = 'I'







      Comment

      Working...