# sp_executesql und rückgabe



## styri (23. Juni 2006)

Hallo zusammen,

Folgendes Problem:
Möchte in einer SP mit Hilfe der sp_executesql ein SQLStatement ausführen und das Ergebnis in meine @servicesID schreiben.

Mit Hilfe div. Beschreibungen zur sp_executesql, habe ich mir inzwischen das hier zusammen getippt:


```
CREATE PROCEDURE SP_cross_ins
    @packagesID varchar(10),
    @description varchar(20),
    @crosstable varchar(100)
  AS
    DECLARE @SQLStatement1 nvarchar(1000),
            @servicesID int,
            @parameters nvarchar(200),

    SELECT @SQLStatement1=N'SELECT @sID=id FROM @crosstable2 WHERE description=@description2'
    SELECT @parameters=N'@crosstable2 varchar(100),@description2 varchar(20),@sID int OUTPUT'
    EXECUTE sp_executesql @SQLStatement1,@params=@parameters,@crosstable2=@crosstable,@description2=@description,@sID=@servicesID OUTPUT
```

Fehlermeldung: Die "@crosstable2"-Tabellenvariable muss deklariert werden.
Was ich meiner Meinung nach ja aber in @parameters tue.

Für Hilfe wär ich dankbar.


----------

