Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Dấu gạch chéo ngược trong tệp csv

Theo mặc định TẢI DỮ LIỆU sử dụng \ làm ký tự thoát. Xem xét thông tin đầu vào của bạn:

"abcd", "efgh\", "ijk"

Chuỗi đó \" được hiểu là một câu trích dẫn không kèm theo theo nghĩa đen, không phải dấu gạch chéo ngược theo sau một câu trích dẫn.

tốt nhất giải pháp là thoát đúng cách các dấu gạch chéo ngược trong tệp CSV của bạn, ví dụ:

"abcd", "efgh\\", "ijk"

Nếu bạn không thể làm điều đó, bạn có thể tắt tính năng thoát trong câu lệnh LOAD DATA INFILE của mình bằng cách thêm ESCAPED BY '' vào tuyên bố. Điều đó sẽ ngăn nó nhận ra \ là một ký tự thoát, nhưng hãy nhớ rằng nó cũng sẽ vô hiệu hóa tất cả các chuỗi thoát khác trong tệp đầu vào của bạn. Điều đó cũng sẽ nhập efgh\ , dấu gạch chéo ngược sẽ không bị bỏ qua.

Nếu nhập efgh\ là không thể chấp nhận được thì bạn sẽ phải sửa định dạng tệp đầu vào của mình hoặc xóa dấu cuối \ sau này trong logic ứng dụng của bạn hoặc với một truy vấn SQL khác.

Xem Cú pháp THÔNG TIN DỮ LIỆU TẢI TRỌNG CỦA MySQL để biết thêm thông tin về các tùy chọn định dạng tệp.

Hy vọng điều đó sẽ hữu ích.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Khóa và chỉ mục ngoại

  2. Tôi có thể thực thi các câu lệnh MySQL SQL trong FireFox không?

  3. Chỉ chọn hàng mẹ nếu hàng đó không có hàng con

  4. Tại sao mysql_num_rows trả về 0?

  5. mysqld:Không thể thay đổi dir thành dữ liệu. Máy chủ không khởi động