Ich habe das gelesen: Wie überprüfe ich, ob eine SQL Server-Zeichenfolge leer oder leer ist , aber in dieser Situation hat es mir nicht geholfen.
Der Code aus meiner gespeicherten Prozedur:
%Vor% @item1
ist NVARCHAR(1000)
type.
Beim Ausführen dieser gespeicherten Prozedur habe ich den Wert für item1
es zeigt
SELECT * FROM TEST1
// ist korrekt, wenn @item1 = N'some'
statt
SELECT * FROM TEST2
Es ist irgendwo eine Funktion in SQL, um zu überprüfen, ob eine Zeichenfolge null oder leer ist. ODER Ich habe irgendwo einen Fehler gemacht?
Wie in C # - & gt; string.IsNullOrEmpty(myValue)
das ist das richtige Verhalten.
Wenn Sie @ item1
auf einen Wert setzen, ist der folgende Ausdruck wahr
In SQL Server gibt es keine solche Funktion, aber Sie können Ihre eigene erstellen:
%Vor%Um zu überprüfen, ob die Variable leer oder leer ist, verwenden Sie Folgendes:
%Vor% Natürlich funktioniert das; wenn @item1 = N''
, es IS NOT NULL
.
Sie können @item1
als NULL
standardmäßig am Anfang Ihrer gespeicherten Prozedur definieren und dann keinen Parameter übergeben.
Tags und Links sql sql-server-2005