Ich habe zwei Tabellen, ''mitarbeiter' und 'abteilung'. Die Spalte 'abtID' ist in der Tabelle 'mitarbeiter' Fremdachl�sselspalte
und in der Tabelle 'abteilung' Prim�rschl�ssel.
Wenn ich nun einen neuen Mitarbeiter zur Tanbelle 'mitarbeiter' hinzuf�gen m�chte, kann ich ja nicht irgendeinen Wert als
Wert f�r die Spalte 'abtID' angeben, vondem ich nicht weiss, ob eine Abteilung mit genau diesem Wert existent ist.
Ich muss also doch erst in der Tabelle 'abteilung' pr�fen, ob die entsprechende Abteilung, die ich der Prozedur �bergebe, existent ist. Ist das der Fall, so m�chte ich �ber eine SQL-Anweisung den Wert der Spalte 'abtID' der Abteilung ermitteln um diese dann in Verbindung mit dieser in die Tabelle 'mitarbeiter' einf�gen zu k�nnen...
Nun meine Fragen an Euch:
1.W�rde man so vorgehen, oder ist das Eurer Meinung nach um f�nf Ecken gedacht?
2.Ich bekomme eine Meldung "ADO-Fehler: Falsche Syntax in der N�he des AS-Schl�sselwortes"; was mache ich denn hier falsch?
3.Wie w�rdet Ihr bei sowas vorgehen?
Viele Gr�sse
lars
CREATE PROCEDURE dbo.StoredProcedure1 @lastname varchar, @firstname varchar, @phone varchar, @gehalt decimal, @abteilung varchar,
AS
if exists (SELECT abtID
FROM abteilung
Where abtname = @abteilung)
PRINT 'Abteilung existiert nicht!'
ELSEBEGIN TRAN
DECLARE @abtID int
SELECT @abtID = abtID FROM abteilung Where abtname = @abteilung INSERT INTO mitarbeiter VALUES (@lastname, @firstname, @phone, @gehalt, @abtID) COMMIT TRAN
/* SET NOCOUNT ON */ RETURN
www.zoologie-online.de
Lars Berner Stormcrow-Software Postfach: 110123 69071 Heidelberg
--- Ausgehende Mail ist zertifiziert virenfrei. �berpr�ft durch AVG Antivirus System (http://www.grisoft.com/de). Version: 6.0.471 / Virendatenbank: 269 - Erstellungsdatum: 10.04.2003
