У меня есть много таблиц, которые необходимо ID Scramblers, так:Как передать существующую таблицу процедуре? Как использовать эти ... табличные параметры thingys? посмотрите на мой код ниже, пожалуйста,
CREATE PROCEDURE SP_generateUniqueID (-- pass table here somehow --)
AS
BEGIN
DECLARE @ID varchar(100) -- NEW ID.
DECLARE @isIDInUse tinyint -- BOOLEAN YES/NO.
SET @isIDInUse=1
WHILE(@isIDInUse=1) -- KEEP GENERATING TILL YOU FIND ONE:
BEGIN
SET @ID= dbo.generateID('aA1a1') -- GENERATES ID. doesn't matter how.
IF (@ID NOT IN (@passedTable)) -- DOES @ID EXIST ALREADY?
/*(SEARCHES THE PASSED TABLE! Which its size will be 1XN)*/
SET @isIDInUse=0 -- NO, YOU CAN USE.
END
RETURN @ID
END
Я не могу сделать прохождение существующей таблицы идут гладко ... Я хочу, чтобы иметь возможность вставить любая таблица, в которой используются идентификаторы. Любое предложение?
Есть несколько вариантов (CLR , динамический SQL). Но это может помочь, если вы объясните цель. С дополнительным контекстом вы, скорее всего, получите правильное решение. –
Вы проверили параметр таблицы? –
Табличные параметры являются тупиковыми - вы не можете просто передать таблицу, вы можете передать только переменную таблицы. – Luaan