also irgendwie funzt das nicht... habe das jetzt soweit:
CREATE PROCEDURE insertReservierung
@Datum datetime,@kundenID int,@Anreise datetime,@Abreise datetime,
@Wuensche text,@ZTyp1Anzahl int,@ZTyp2Anzahl int,@ZTyp3Anzahl int

AS
    BEGIN TRANSACTION
        DECLARE @ID_Reservierung int

        INSERT INTO Reservierung
            (Buchungsdatum,
             Kunden_ID,
             Anreisedatum,
             Abreisedatum,
             Wuensche)
        VALUES
            (@Datum,
             @kundenID,
             @Anreise,
             @Abreise,
             @Wuensche)

        SET @ID_Reservierung = SELECT @@IDENTITY

    COMMIT TRANSACTION
GO

aber bei dem @@IDENTITY bringt er mir eine fehlermeldung ... :(

----- Original Message ----- 
From: "Andreas Roth" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Thursday, February 12, 2004 9:52 PM
Subject: AW: [Database.asp] stored procedure


TSQL ist eigentlich nicht Prozedural, das heist, eigentlich gehst du nicht
Satz f�r Satz durch, wie zu beispiel bei einer do - while Schleife
Das kann man mit Cursern zwar auch erreichen aber die empfohlene
vorgehensweise, ist es die Update Befehle entsprechend aufzubauen.
Leider weis ich nicht, woraus sich Typ1Anzahl errechnet, sonst k�nnte ich
dir vielleicht einen Vorschlag machen. Um die ID eines gerade eben
geschriebenen Datensatzes herauszufinden, gibt es die Variable @@IDENTITY
Als Beispielcode in der Hilfe steht hierzu z.B.:
INSERT INTO jobs (job_desc,min_lvl,max_lvl)
VALUES ('Accountant',12,125)
SELECT @@IDENTITY AS 'Identity'

Gru�, Andreas

> -----Urspr�ngliche Nachricht-----
> Von: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED] Im Auftrag von
> Thomas Beckert
> Gesendet: Donnerstag, 12. Februar 2004 21:40
> An: [EMAIL PROTECTED]
> Betreff: [Database.asp] stored procedure
>
> hi liste -
>
> folgende ausgangslage:
>
> ich habe zwei tabellen.
>
> tabelle Reservierung:
> Bu_Nr (auto-Wert)
> BuchungsDatum
> Kunden_ID
> AnreiseDatum
> AbreiseDatum
> Wuensche
>
> tabelle ZimmerBuchung:
> ID (AutoWert)
> Bu_Nr (Fremdschl�ssel)
> ZimmerTyp_ID
> Anzahl
>
>
> Jetzt will ich eine stored procedure, die mir eine
> reservierung eintr�gt.
>
> ich schreib den code, den ich mir vorstelle, aber nicht wei�,
> wie ich ihn realisieren soll, mal in pseudocode:
>
> CREATE PROCEDURE insertReservierung
> @datum,
> @kundenID,@Anreise,@Abreise,@Wuesche,@ZTyp1Anzahl,@Typ2Anzahl,
> @ZTyp3Anzahl
> AS
>     BEGIN TRANSACTION
>
>     INSERT INTO Reservierung Values
>     ....
>
>     if(Typ1Anzahl > 0)
>     INSERT INTO Zimmerbuchung VALUES
>         .....
>
>     if(Typ2Anzahl > 0)
>     INSERT INTO Zimmerbuchung VALUES
>         .....
>
>     if(Typ3Anzahl > 0)
>     INSERT INTO Zimmerbuchung VALUES
>         .....
>     COMMIT TRANSACTION
> GO
>
>
> Mein Problem besteht zum einen darin, die autoID der
> Reservierungen f�r die INSERTs der Zimmerbuchung zu bekommen
> und dann fehlt mir die syntax f�r die "IF" anweisung in sql ...
>
>
> hoffe, ich habe das einigerma�en verst�ndlich r�bergebracht. :-/
>
> _______________________________________________
> Database.asp mailing list
> [EMAIL PROTECTED]
> http://www.glengamoi.com/mailman/listinfo/database.asp
>

_______________________________________________
Database.asp mailing list
[EMAIL PROTECTED]
http://www.glengamoi.com/mailman/listinfo/database.asp

_______________________________________________
Database.asp mailing list
[EMAIL PROTECTED]
http://www.glengamoi.com/mailman/listinfo/database.asp

Antwort per Email an