Ich baue eine Funktion und versuche, sie auszuführen ... aber es treten einige Fehler auf
CREATE FUNCTION dbo.Afisho_rankimin(@emri_rest int)
RETURNS int
AS
BEGIN
Declare @rankimi int
Select @rankimi=dbo.RESTORANTET.Rankimi
From RESTORANTET
Where [email protected]_rest
RETURN @rankimi
END
GO
SELECT dbo.Afisho_rankimin(5)AS Rankimi
GO
Die Fehler beim Ausführen sind:
Meldung 2714, Ebene 16, Status 3, Verfahren Afisho_rankimin, Zeile 11
Es gibt bereits ein Objekt mit dem Namen 'Afisho_rankimin' in der Datenbank.
und es heißt auch:
Kann die Spalte "dbo" oder die benutzerdefinierte Funktion oder das Aggregat "dbo.Afisho_rankimin" nicht finden oder der Name ist nicht eindeutig
Es sieht so aus, als gäbe es in Ihrer Datenbank etwas anderes namens Afisho_rankimin
, sodass die Funktion nicht erstellt wird. Rufen Sie Ihre Funktion etwas anderes auf. Z.B.
CREATE FUNCTION dbo.Afisho_rankimin1(@emri_rest int)
RETURNS int
AS
BEGIN
Declare @rankimi int
Select @rankimi=dbo.RESTORANTET.Rankimi
From RESTORANTET
Where [email protected]_rest
RETURN @rankimi
END
GO
Beachten Sie, dass Sie dies nur einmal aufrufen müssen, nicht jedes Mal, wenn Sie die Funktion aufrufen. Versuchen Sie danach anzurufen
SELECT dbo.Afisho_rankimin1(5) AS Rankimi
Ich bin mehrmals auf diese und die folgende Frage gekommen.
So rufen Sie die Skalarfunktion in SQL Server 2008 auf
Ich versuche jedes Mal, die Funktion mit der in SQL Server Management Studio (SSMS) gezeigten Syntax einzugeben, um die Ergebnisse zu sehen, und jedes Mal, wenn ich die Fehler bekomme.
Für mich liegt das daran, dass meine Ergebnismenge im tabellarischen Datenformat vorliegt. Um die Ergebnisse in SSMS zu sehen, muss ich es daher so nennen:
SELECT * FROM dbo.Afisho_rankimin_TABLE(5);
Ich verstehe, dass die Frage des Autors eine Skalarfunktion umfasste. Diese Antwort soll nur anderen helfen, die StackOverflow häufig besuchen, wenn sie ein Problem mit einer Abfrage haben (wie ich).
Ich hoffe das hilft anderen.
sie können eine Funktion erstellen, bevor.
Alter FUNCTION dbo.Afisho_rankimin(@emri_rest int)
RETURNS int
AS
BEGIN
Declare @rankimi int
Select @rankimi=dbo.RESTORANTET.Rankimi
From RESTORANTET
Where [email protected]_rest
RETURN @rankimi
END
GO
SELECT dbo.Afisho_rankimin(5) AS Rankimi
GO