Hallo ihr Datenbankler,
ich habe einen Fehler bei dem mir auch leider Google bisher nicht wirklich helfen konnte.
Meine Stored Prdocedure sieht momentan so aus:
[highlight=sql]
ALTER PROCEDURE [dbo].[spSearchLabelAndSN]
@label varchar(15) = '',
@serial varchar(10) = ''
AS
BEGIN
SET NOCOUNT ON;
Declare @command varchar(500)
Set @command =
'SELECT Kunden.Name as ''Kunde name'',Autos.Serial AS ''Auto serial'',Autos.Label AS ''Auto label'''+
'FROM Kunden FULL OUTER JOIN ' +
'Autos ON Kunden.ID = Autos.KundenID ' +
'WHERE (1 = 1) '
if(@label <> '')
Begin
Set @command = @command +' AND (Autos.Label LIKE ''%'+@label+'%'') '
End
if( @serial <> '')
Begin
Set @command = @command +' AND (Autos.InternalID LIKE ''%'+@serial+'%'') '
End
Set @command = @command +'ORDER BY ''Auto serial'', ''Auto label'', ''Kunde name'' '
Exec(@command);
Return @command;
[/highlight]
Anzumerken ist, dass das Label ind er Datenbank auch ein varchar() ist aber Serial in der Datenbank ein int, bei der Abfrage ein varchar().
Daher kommt auch beim Ausführen der Stored Procedure ein Fehler, der darauf hinweist:
Conversion failed when converting the varchar value [...] to data type int.
Ich weiß nur leider nicht, wie ich den Fehler beheben kann. (Vielleicht steh ich auch einfach nur aufm Schlauch! )
Danke
Gruß Zimbel
ich habe einen Fehler bei dem mir auch leider Google bisher nicht wirklich helfen konnte.
Meine Stored Prdocedure sieht momentan so aus:
[highlight=sql]
ALTER PROCEDURE [dbo].[spSearchLabelAndSN]
@label varchar(15) = '',
@serial varchar(10) = ''
AS
BEGIN
SET NOCOUNT ON;
Declare @command varchar(500)
Set @command =
'SELECT Kunden.Name as ''Kunde name'',Autos.Serial AS ''Auto serial'',Autos.Label AS ''Auto label'''+
'FROM Kunden FULL OUTER JOIN ' +
'Autos ON Kunden.ID = Autos.KundenID ' +
'WHERE (1 = 1) '
if(@label <> '')
Begin
Set @command = @command +' AND (Autos.Label LIKE ''%'+@label+'%'') '
End
if( @serial <> '')
Begin
Set @command = @command +' AND (Autos.InternalID LIKE ''%'+@serial+'%'') '
End
Set @command = @command +'ORDER BY ''Auto serial'', ''Auto label'', ''Kunde name'' '
Exec(@command);
Return @command;
[/highlight]
Anzumerken ist, dass das Label ind er Datenbank auch ein varchar() ist aber Serial in der Datenbank ein int, bei der Abfrage ein varchar().
Daher kommt auch beim Ausführen der Stored Procedure ein Fehler, der darauf hinweist:
Conversion failed when converting the varchar value [...] to data type int.
Ich weiß nur leider nicht, wie ich den Fehler beheben kann. (Vielleicht steh ich auch einfach nur aufm Schlauch! )
Danke
Gruß Zimbel
Comment