Die Konvertierung ist fehlgeschlagen, wenn der nvarchar-Wert 'Internet Explorer 3 original' in den Datentyp int konvertiert wurde
In SQL Server 2008 (TSQL) habe ich eine gespeicherte Prozedur wie folgt erstellt:
CREATE PROCEDURE SP_1_10_2
AS
declare @mostValuableBook nvarchar(255)
SELECT @mostValuableBook = Name
FROM books
WHERE price =
( SELECT MAX(price)
FROM books
WHERE izd LIKE '%BHV%' );
return @mostValuableBook
GO
Aber wenn ich versuche, es auszuführen:
declare @x nvarchar(255)
EXECUTE @x = SP_1_10_2;
SELECT 'The most expensive BHV book:', @x AS 'Name'
GO
Ich erhalte eine Fehlermeldung:
Die Konvertierung ist fehlgeschlagen, wenn der nvarchar-Wert 'Internet Explorer 3 original' in den Datentyp int konvertiert wurde.
Es scheint, als liege das Problem in der Leitung
EXECUTE @x = SP_1_10_2;
Kannst du mir bitte sagen, was los ist? Warum versucht es, in int zu konvertieren?