Auf
dnnJungle gibt es Templates für Visual Studio Projekte in VB und C# und CodeSmith Templates
für den DAL und BBL. Für die Stored Proceduren gibt es auch ein Template. Das hat einen kleinen aber
feinen Eigenheit drin. Da habe ich jetzt ganz lange gesucht. :-S
OK.
1.
Wenn man die SP's im Query Analyzer erstellen will, müssen alle "{databaseOwner}{objectQualifier}"
entfernt werden.
if
exists (select * from dbo.sysobjectswhere id = object_id(N'{databaseOwner}{objectQualifier} GENiALi_GaestebuchGet') andOBJECTPROPERTY(id, N'IsProcedure') = 1)
dropprocedure{databaseOwner}{objectQualifier} GENiALi_GaestebuchGet
Man markiert also {databaseOwner}{objectQualifier}, drückt Ctrl+H und ersetzt sie durch nichts.
Jetzt wird man feststellen, dass das ding noch nicht läuft. Bei mir kam der Fehler
"[Microsoft][ODBC SQL Server Driver]Syntaxfehler oder Zugriffsverletzung". An den Berechtigungen kann
es aber nicht liegen. Ich bin mit dem sa drin. ;)
Na ja. Nach langem suchen habe ich bemerkt, dass es noch ein einzelnes "{objectQualifier}" gab. :-)
CREATE
PROCEDURE GENiALi_GaestebuchGet
@ID int
,@moduleId int
AS
SELECT
[ID],
[ModuleID],
[GastName],
[GastUrl],
[GastUrlName],
[GastMail],
[GastText],
[GastDatum],
[GastOrt],
[AdminKommentar],
[AdminGbEintragAnzeigen]
FROM{objectQualifier} GENiALi_Gaestebuch
WHERE
[ID] = @ID
AND [moduleid]=@moduleId
Einfach löschen, b.z.w. auch durch nichts ersetzen. An dem habe ich sehr lange gesucht.
2.
Das ist nur ein Schönheitsfehler.
CREATE
PROCEDURE GENiALi_GaestebuchGet
@ID int
,@moduleId int
Das ',' vor "@moduleId int" sollte nach dem "@ID int" sein.
CREATE
PROCEDURE GENiALi_GaestebuchGet
@ID int,
@moduleId int
Sieht irgend wie angenehmer aus.