Почему параметр типа таблицы не объявляется в sp? - PullRequest
0 голосов
/ 10 октября 2018
ALTER PROCEDURE [dbo].[InsertInvoices] 


        @ServiceIDs as dbo.ServiceIDs READONLY,

Но он не объявляется и выдает ошибку:

Сообщение 2715, уровень 16, состояние 3, процедура InsertInvoices, столбец строки 18, параметр или переменная # 8: невозможнонайти тип данных dbo.ServiceIDs.Параметр или переменная '@ServiceIDs' имеют недопустимый тип данных.

, хотя я объявил тип таблицы.

CREATE TYPE [dbo].[ServicesIDs] AS TABLE(
    [ID] [int] IDENTITY(1,1) NOT NULL,
    [ServiceID] [int] NULL,
    PRIMARY KEY CLUSTERED 
(
    [ID] ASC
)WITH (IGNORE_DUP_KEY = OFF)
)
GO

Ответы [ 2 ]

0 голосов
/ 10 октября 2018

Ваша проблема в написании.Ваш тип [dbo]. [ServicesIDs], но вы используете @ServiceIDs.Проблема в символе 's'.

ALTER PROCEDURE [dbo].[InsertInvoices] 


        @ServiceIDs as dbo.ServicesIDs READONLY,
0 голосов
/ 10 октября 2018

Это просто не работает из-за опечатки: ваш тип называется [dbo].[ServicesIDs], но вы пытаетесь использовать его как dbo.ServiceIDs (обратите внимание на пропущенные 's' в Services!

Попробуйте это:

ALTER PROCEDURE [dbo].[InsertInvoices] 
   @ServiceIDs as dbo.ServicesIDs READONLY,
...