ログファイルにテキストを書き込むためのストアドプロシージャを作成しました。私はこのようにそれを呼び出すと簡単なストアドプロシージャを呼び出してテキストログファイルを作成するときのエラー
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[WriteTextFileLog]
@TextForLog nvarchar(MAX)
AS
DECLARE @CMDTEXT as nvarchar(255)
SELECT @CMDTEXT = 'echo ' + @TextForLog + ' >> "\\pathtotextfile\LogFile.txt"'
EXEC master..xp_cmdshell @CMDTEXT;
:
MYDATABASE.dbo.writetextfilelog @TextForLog = CONVERT(varchar(23), GETDATE, 121)
私はこのエラーを取得する:
Incorrect syntax near the keyword 'CONVERT'
私が何かを明らかに不足しているしなければならない...任意のアイデア?
'GETDATE'の後に行方不明()があります。 'GETDATE()' – scsimon
また、 'EXEC'コマンドは式などが好きではありません。あなたは' EXEC'呼び出しの前に 'CONVERT'を実行し、その結果を変数に格納してから'EXEC' - コールで何の表現や計算も無しに... –
ありがとうSCSIMON、私はそれをキャッチしました... MARC、私はあなたが正しいかもしれないと思っていますが、私はその問題をコードしています... MTB.dbo.writetextfilelog @TextForLog = "blah blah test" + CONVERT(varchar(23)、GETDATE()、121) これはそうするだろうと思ったが、明らかにそうではない –