Вставить в EXE C xp_dirtree с производным столбцом - PullRequest
0 голосов
/ 30 января 2020

Я пытаюсь использовать хранимую процедуру xp_dirtree для создания полного пути к файлу в отчете SSRS, используя:

CREATE TABLE #tt1 (
       id int IDENTITY(1,1)
      ,subdirectory nvarchar(512)
      ,depth int
      ,isfile bit);

INSERT #tt1 
EXEC xp_dirtree @dir, 10, 1

, однако в качестве дополнения я хотел бы добавить столбец во вставку верх хранимой процедуры. так что-то вроде

CREATE TABLE #tt1 (
       id int IDENTITY(1,1)
      ,subdirectory nvarchar(512)
      ,depth int
      ,isfile bit
      ,NewColumn nvarchar(100)
      );

INSERT #tt1 
EXEC xp_dirtree @dir, 10, 1, 'NEW COLUMN'

Однако это не работает и выбивает

Msg 213, Level 16, State 7, Procedure xp_dirtree, Line 1 [Batch Start Line 0]
Column name or number of supplied values does not match table definition.

1 Ответ

0 голосов
/ 30 января 2020

Вам нужно исправить столбец при использовании оператора insert into . .:

INSERT INTO #tt1 (subdirectory, depth, isfile, NewColumn)
     EXEC xp_dirtree @dir, 10, 1, 'NEW COLUMN'
...