web-dev-qa-db-de.com

Excel-Anführungszeichen oder Apostrophe in Zellwerten

Ich bekomme viele Datenbankinformationen von Clients in Excel-Tabellen. Ich muss diese Daten häufig wieder in die Datenbank einfügen/aktualisieren. 

Ich verwende häufig Excel, um die Einfüge- und Aktualisierungsanweisungen zu generieren, indem ein Bündel Zellen zusammengefügt wird. Manchmal enthalten die Daten Textzellen, die einfache Anführungszeichen enthalten können. Wenn nicht sorgfältig gehandelt wird, führen diese einfachen Anführungszeichen zum Bruch der SQL-Anweisungen.

Wie kann ich einfache Anführungszeichen in Textdaten mit Hilfe von Formeln schützen, wenn Sie mehrere Zellwerte miteinander verketten, damit meine resultierenden SQL-Skripts gültig sind?

15
Mir

Die beste Lösung, die ich gefunden habe, ist folgende zu verwenden:

=SUBSTITUTE(A1, "'", "''")

Dadurch werden alle einfachen Anführungszeichen durch zwei einfache Anführungszeichen ersetzt, die in T-SQL-Anweisungen das Zeichen umgehen und es als Zeichenfolgendaten behandeln.

23
Mir

Die Verwendung von CONCATENATE mit doppelten Anführungszeichen erfordert lediglich ein Escape-Zeichen. Das wird wie folgt gemacht:

=CONCATENATE("""";"In quotes!";"""")
0
user4669140