Prozedur erstellen

MarekDerUser

Neuer Benutzer
Beiträge
1
Hi Leute,

ich bin was MS SQL angeht leider ein Newbie aber auch kein ganz hoffnungsloser Fall. Vieles habe ich schon hinbekommen wie eine Datenbankverbindung, erste Tabellen erstellt und ich konnte schon Daten eintragen. Auch habe ich meine erste Prozedur erstellt aber... ich kann sie nicht ausführen. :(

Erstinfos: Ich benutze MS SQL Server Express 2008. Weiter habe ich ein Programm hier was auf meine Datenbank über ODBC zugreift.

Ich kriege immer die Fehlermeldung 0x80004005. Habe danach recherchiert und es heißt mit der Berechtigung stimmt was nicht. Mein Code schaut ganz simpel folgendermaßen aus:

Use MyDatabase
Go

IF OBJECT_ID ( 'dbo.TimeSynchronization') IS NOT NULL
DROP PROCEDURE dbo.TimeSynchronization;
GO

CREATE PROCEDURE dbo.TimeSynchronization
--(@Wert2 INT)
--(@TextZeitpunkt nchar(24) OUT)
--(@Zeitpunkt datetime OUT, @TextZeitpunkt varchar(24) OUT)
--@Wert INT OUT
WITH EXECUTE AS owner --dbo
AS
--select @Zeitpunkt = GETDATE();
--select @TextZeitpunkt = convert(nchar(20), getdate(), 120);
--select @Wert = 5;
--open @Wert;
--print('hello world');
--select return_value = 5;
return(5);
GO

--rant execute on dbo.TimeSynchronization TO system
--go

GRANT execute ON dbo.TimeSynchronization TO PUBLIC
Go

--IF sysname NewDBUser IS NOT NULL
--sp_droplogin NewDBUser
--drop login NewDBUser
--GO

--sp_addlogin 'NewDBUser', 'Us3rpassw0rd', 'MyDatabase'
--GO

--sp_grantdbaccess 'NewDBUser'
--GO

--sp_grantdbaccess 'dbo'
--GO

grant execute on dbo.TimeSynchronization to NewDBUser
GO

OK. Ich habe jetzt mal die ganzen auskommentierten Stellen dringelassen, dass ihr seht, dass ich schon viel probiert habe aber ich komme nicht dahinter was ich falsch mache. Vielleicht kann mir jemand helfen. Wäre euch sehr dankbar. Ne Schulung kriege ich.... aber ob ich da Antworten bekomme? Und die ist erst in zwei Wochen. :/

Euch allen einen lieben Dank!
Marek
 
Werbung:
Zurück
Oben