SQL Server CLR-ファイル出力関数-
概要
引数に、出力文字列、出力ファイルパスを指定し、
指定されたファイルに指定された文字列を出力するだけです。
使用例
exec dbo.OutputFile @OutputString = N'TEST',
@OutFile = N'C:\out\Test.txt'
仕様
クラス名は『Kaya.Wankuma.WriteProcedure』です。
メソッド名は『OutputFile』です。
ダウンロード
ダウンロードはこちらよりお願いします。
動作確認
Microsoft Visual C# 2008にてコンパイルし、
SQL Server 2008 RC0にて動作確認をしています。
使用上の注意
SQL CLRを動かせるようになるまでに、苦労されるかもしれません。
以下のことを行ってください。
- DLLのダウンロード、保存
- アセンブリの登録(unsafeで登録してください。)
- CLR 統合機能の有効化
- ファンクション作成
アセンブリ登録方法
アセンブリの登録は『CREATE ASSEMBLY』を使用して行うか、『Microsoft SQL Server Management Studio』を使用して登録します。
CREATE ASSEMBLYの例はこちらです。
CREATE ASSEMBLY [アセンブリ名]
FROM 'ファイル名'
WITH PERMISSION_SET = UNSAFE
CLR 統合機能の有効化
sp_configure 'clr enabled', 1
GO
RECONFIGURE
GO
プロシージャ実行ユーザへの権限付与
GRANT UNSAFE ASSEMBLY TO [ユーザ名];
GO
データベースへの信頼設定
ALTER DATABASE [データベース名] SET TRUSTWORTHY ON;
GO
プロシージャ作成
CREATE PROCEDURE [dbo].[OutputFile]
@OutputString nvarchar(max),
@OutFile nvarchar(max)
WITH EXECUTE AS CALLER
AS
EXTERNAL NAME [SqlClassLibrary].[Kaya.Wankuma.WriteProcedure].[OutputFile]
GO