Home  >  Article  >  Database  >  SQL导出为Word

SQL导出为Word

WBOY
WBOYOriginal
2016-06-07 14:54:461243browse

SQL导出为Word Word Version: SQL Server 7.0/2000Created by: Alexander Chigrikhttp://www.MSSQLCity.com/ - all about MS SQL(SQL Server Articles, FAQ, Scripts, Tips and Test Exams). This stored procedure can be used to export the text string in

SQL导出为Word Word
Version: SQL Server 7.0/2000
Created by: Alexander Chigrik
http://www.MSSQLCity.com/ - all about MS SQL
(SQL Server Articles, FAQ, Scripts, Tips and Test Exams). 

This stored procedure can be used to export the text string into
Microsoft Word. You can pass the text string and the file name
(if the file name was not specified, the c:\ImportToWord.doc
will be used) into this stored procedure, as in the example below:

EXEC ExportToWord @Text = 'Test example',
                  @filename = 'c:\ImportToWord.doc'


This stored procedure can be used to export the text string into 
Microsoft Word. You can pass the text string and the file name 
(if the file name was not specified, the c:\ImportToWord.doc 
will be used) into this stored procedure, as in the example below:

EXEC ExportToWord @Text = 'Test example',
                  @filename = 'c:\ImportToWord.doc'
*/

IF OBJECT_ID('ExportToWord') IS NOT NULL DROP PROC ExportToWord
GO

CREATE PROCEDURE ExportToWord (
  @Text varchar(200) = null,
  @filename varchar(200) = 'c:\ImportToWord.doc'
)
AS
DECLARE @object int,
        @Range int,
        @Documents int,
        @Document int,
        @hr int,
        @result_str varchar(255)

IF @Text IS NULL 
  BEGIN
    PRINT 'You should write text'
    RETURN
  END

SET NOCOUNT ON

EXEC @hr = sp_OACreate 'Word.Application', @object OUT
IF @hr <> 0
BEGIN
    PRINT 'error create Word.Application'
    RETURN
END

EXEC @hr = sp_OAGetProperty @object, 'Documents', @Documents OUT
IF @hr <> 0
BEGIN
    PRINT 'error create Documents'
    RETURN
END

EXEC @hr = sp_OAMethod @Documents, 'Add', @Document OUT
IF @hr <> 0
BEGIN
    PRINT 'error with method Add'
    RETURN
END

EXEC @hr = sp_OAGetProperty @Document, 'Range', @Range OUT
IF @hr <> 0
BEGIN
    PRINT 'error create Range'
    RETURN
END

EXEC @hr = sp_OASetProperty @Range, 'Text', @Text
IF @hr <> 0
BEGIN
    PRINT 'error set Text'
    RETURN
END

SELECT @result_str = 'SaveAs("' + @filename + '")'
EXEC @hr = sp_OAMethod @Document, @result_str
IF @hr <> 0
BEGIN
    PRINT 'error with method SaveAs'
    RETURN
END

EXEC @hr = sp_OAMethod @Documents, 'Close'
IF @hr <> 0
BEGIN
    PRINT 'error with method Close'
    RETURN
END

EXEC @hr = sp_OADestroy @object
IF @hr <> 0
BEGIN
    PRINT 'error destroy Word.Application'
    RETURN
END
GO
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Previous article:SQL 框架,完全用 SQL 写的Next article:一条比较SQL