Creazione di Custom TYPE: differenze tra le versioni

Da Webmobili Wiki.
Nessun oggetto della modifica
Riga 14: Riga 14:


== Uso in SP ==
== Uso in SP ==
<pre>
<syntaxhighlight lang="sql">
ALTER PROCEDURE [dbo].[UTILS_SPAM_remove_lead]
ALTER PROCEDURE [dbo].[UTILS_SPAM_remove_lead]
(
(
Riga 27: Riga 27:
END
END


</pre>
</syntaxhighlight >

Versione delle 17:58, 18 feb 2025

Info

Se vogliamo passare a SQL Server un tipo complesso, ad esempio una lista bisogna usare le TVP (Table-Valued Parameter)

Per vedere tutti i TYPE presenti sul Database:

SELECT * FROM sys.types;

Creazione TYPE

Possiamo creare un tipo custom per una lista di interi come tabella:

CREATE TYPE IntList AS TABLE (Id INT);

Uso in SP

ALTER PROCEDURE [dbo].[UTILS_SPAM_remove_lead]
(
    @repositoryIds IntList READONLY  -- Usiamo il tipo creato sopra
)
AS
BEGIN
    SET NOCOUNT ON;

    -- Eliminare solo i record con repositoryID presenti nella lista
    DELETE FROM Lead WHERE repositoryID IN (SELECT Id FROM @repositoryIds);
END