möchte eine SP schreiben in der fall abhängig where klauseln verwendet werden...
das habe ich bis jetzt:
als fehlermeldung beim ausführen bekomme ich dies:
Meldung 156, Ebene 15, Status 1, Prozedur SelectSeiteninhaltdi, Zeile 31
Falsche Syntax in der Nähe des 'WHERE'-Schlüsselwortes.
Meldung 156, Ebene 15, Status 1, Prozedur SelectSeiteninhaltdi, Zeile 35
Falsche Syntax in der Nähe des 'AND'-Schlüsselwortes.
hoffe mir kann wer helfen danke im vorraus
das habe ich bis jetzt:
Code:
go CREATE PROCEDURE SelectSeiteninhaltdi ( @SNR int, @Oberbereich nvarchar(max), @Unterbereich nvarchar(max), @Ebene int, @Sprache nvarchar(5) = 'de' ) AS BEGIN SELECT S_Nr, S_Ebene, S_Oberbereich, S_Unterbereich, S_Obertitel, S_AnleserTitel, S_Anleser, S_Inhalte, (SELECT COUNT(S_NR) FROM SEITE next WHERE next.S_Oberbereich = this.S_Oberbereich AND next.S_Unterbereich = this.S_Unterbereich AND this.S_Ebene+1 = next.S_Ebene ) AS KinderAnzahl FROM SEITE this INNER JOIN W_SPRACHE ON W_SPRACHE.WS_NR = this.S_SPRACHE INNER JOIN W_SEITENTYP ON this.wst_nr = W_SEITENTYP.wst_nr IF (@Ebene = 1 OR @Ebene = 2) BEGIN WHERE S_Oberbereich LIKE @Oberbereich AND S_Ebene LIKE @Ebene+1 IF (@Ebene = 2) BEGIN AND S_Unterbereich LIKE @Unterbereich END END ELSE BEGIN WHERE S_Nr = @SNR END AND WS_WERT LIKE @Sprache END GO
Meldung 156, Ebene 15, Status 1, Prozedur SelectSeiteninhaltdi, Zeile 31
Falsche Syntax in der Nähe des 'WHERE'-Schlüsselwortes.
Meldung 156, Ebene 15, Status 1, Prozedur SelectSeiteninhaltdi, Zeile 35
Falsche Syntax in der Nähe des 'AND'-Schlüsselwortes.
hoffe mir kann wer helfen danke im vorraus
Comment