LOAD DATA gebruikt standaard \ als escape-teken. Denk aan uw input:
"abcd", "efgh\", "ijk"
Die reeks \"
wordt geïnterpreteerd als een letterlijk niet-omsluitend aanhalingsteken, niet als een backslash gevolgd door een aanhalingsteken.
De beste oplossing is om backslashes correct te escapen in uw CSV-bestand, bijvoorbeeld:
"abcd", "efgh\\", "ijk"
Als u dat niet kunt doen, kunt u escaping uitschakelen in uw LOAD DATA INFILE-instructie door ESCAPED BY ''
toe te voegen. naar de verklaring. Dat zal voorkomen dat \ als een escape-teken wordt herkend, maar houd er rekening mee dat het alle andere escape-reeksen in uw invoerbestand ook uitschakelt. Dat zal ook efgh\
import importeren , wordt de backslash niet genegeerd.
Bij het importeren van efgh\
is onaanvaardbaar, dan moet u de indeling van uw invoerbestand corrigeren of de volgende \ later in uw toepassingslogica of met een andere SQL-query verwijderen.
Zie MySQL LOAD DATA INFILE-syntaxis voor meer informatie over opties voor bestandsindelingen.
Ik hoop dat dat helpt.