2016-04-29 5 views
1

Heute fanden die folgende SQL-Ausdruck:Hat das Hinzufügen einer leeren Zeichenfolge einen Vorteil? Ich

WHERE MyColumn = '' + @var1 + @var2 + '' 

Beide Variablen und die Spalte als varchar definiert.

Bietet die leere Zeichenfolge einen Vorteil? Ich kann nicht sehen, wie irgendeine der Variablen etwas anderes als Text oder null enthalten könnte.

+1

Es könnte eine Annehmlichkeit sein, wenn der Entwickler am Anfang oder am Ende zusätzliche Zeichen hinzufügen wollte. –

Antwort

1

Nein, es gibt keinen Vorteil, dies in String-Verkettung zu tun. Abgesehen davon, dass möglicherweise sichergestellt wird, dass @var1 und immer implizit in eine Zeichenfolge konvertiert werden, um sicherzustellen, dass keine numerische Addition erfolgt, aber es gibt bessere Möglichkeiten, dies zu tun. Sind diese Variablen als ein bestimmter Datentyp definiert?

+1

Er erwähnte es klar in der Frage ** Beide Variablen und die Spalte sind definiert als varchar ** – randominstanceOfLivingThing

+0

Heh, ich habe sogar gelesen, aber ich habe diese Frage als ein nachträglicher Einfall eingegeben und erkannte es, wie ich einreichen. Die Variablen wurden möglicherweise in einer früheren Iteration des Skripts anders eingegeben und die Abfrage wurde nie aktualisiert. – gmiley

Verwandte Themen