icolor 10 Geschrieben 20. April 2011 Melden Geschrieben 20. April 2011 Hallo, ich würde gerne wissen ob es möglich ist, einer Prozedur den Tabellennamen zu übergeben, welche Sie dann auswerten soll. So in der Art: CREATE PROCEDURE GETMAXZAEHLER @table_name sysname = null AS BEGIN ...... SELECT * FROM @table_name Ich denke mir, das das irgendwie geht. Aber ich komme nicht dahinter wie. Im Einsatz habe ich den MS Server 2005.
icolor 10 Geschrieben 20. April 2011 Autor Melden Geschrieben 20. April 2011 So, ich habe das jetzt bislang wie folgt: IF OBJECT_ID('GETMAXZAEHLER', 'P') IS NOT NULL DROP PROCEDURE GETMAXZAEHLER; GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE PROCEDURE GETMAXZAEHLER @table_name varchar(255) AS BEGIN SET NOCOUNT ON; if @table_name is null begin raiserror (15250, -1,-1) return end DECLARE @sql varchar(4000) select @sql = 'SELECT MAX(ZAEHLER) + 1 AS new_zaehler FROM [' + @table_name + ']' exec (@sql) END GO Ist ja auch so weit ganz gut. Ich bekomm den Satz den ich will. Aber wie kann ich jetzt das Ergebnis aus dem @sql als Rückgabe Parameter der Prozedure auswerten?
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden