2010-08-10 9 views
5

Ho bisogno di eseguire un SQL dinamico che utilizza la variabile di tabella creata nell'ambito del genitore. Come faccio a passare la variabile della tabella in SQL dinamico in SQL2008?Passing table variable into dynamic SQL 2008

+0

Dato il carattere generale della tua domanda, forse sarete ben serviti da questa esposizione generale sulla SQL dinamico? http://www.sommarskog.se/dynamic_sql.html – Tobiasopdenbrouw

risposta

18

Ecco un esempio end-end:

-- Define a custom TABLE type 
CREATE TYPE IntegerTableType AS TABLE (ID INTEGER); 

-- Fill a var of that type with some test data 
DECLARE @MyTable IntegerTableType 
INSERT @MyTable VALUES (1),(2),(3) 

-- Now this is how you pass that var into dynamic statement 
EXECUTE sp_executesql N'SELECT * FROM @MyTable', 
    N'@MyTable IntegerTableType READONLY', 
    @MyTable 
+0

è stato veloce! molte grazie –