日期:2014-05-18 浏览次数:20519 次
DECLARE @cmd NVARCHAR(MAX) DECLARE @TargetDir NVARCHAR(MAX) BEGIN TRY SET @TargetDir='L:\DRI' SET @cmd='master.dbo.xp_create_subdir N''' + REPLACE(@TargetDir,'''','''''') + '''' EXEC(@cmd) END TRY BEGIN CATCH SELECT ERROR_MESSAGE() END CATCH
DECLARE @cmd NVARCHAR(MAX) DECLARE @TargetDir NVARCHAR(MAX) BEGIN TRY SET @TargetDir='L:\DRI' SET @cmd='master.dbo.xp_create_subdir N''' + REPLACE(@TargetDir,'''','''''') + '''' EXEC(@cmd) go raiserror('生成一个错误消息',11,1) END TRY BEGIN CATCH SELECT ERROR_MESSAGE() select error_message() as 错误消息, error_severity() as严重级别, error_state() as state; END CATCH --这样看看有没有结果?
------解决方案--------------------
问题应该出在
SET @TargetDir='L:\DRI'
SET @cmd='master.dbo.xp_create_subdir N''' + REPLACE(@TargetDir,'''','''''') + ''''
EXEC(@cmd)
这3句上面
你 print @cmd出来看看结果是什么?
------解决方案--------------------
我运行的结果 DECLARE @cmd NVARCHAR(MAX) DECLARE @TargetDir NVARCHAR(MAX) BEGIN TRY SET @TargetDir='L:\DRI' SET @cmd='master.dbo.xp_create_subdir N''' + REPLACE(@TargetDir,'''','''''') + '''' EXEC(@cmd) END TRY BEGIN CATCH SELECT ERROR_MESSAGE() END CATCH /*p_create_subdir() 返回了错误 3,“系统找不到指定的路径。”*/
------解决方案--------------------
--在最前面加上 select DECLARE @cmd NVARCHAR(MAX) DECLARE @TargetDir NVARCHAR(MAX) BEGIN TRY SET @TargetDir='L:\DRI' SET @cmd='select master.dbo.xp_create_subdir N''' + REPLACE(@TargetDir,'''','''''') + '''' EXEC(@cmd) END TRY BEGIN CATCH SELECT ERROR_MESSAGE() END CATCH /*---------------------------------------------------------------------------------------------------------------- 无法绑定由多个部分组成的标识符 "master.dbo.xp_create_subdir"。 (1 行受影响) */