Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php MySQL加载文件和撇号_Php_Mysql_Pdo_Apostrophe_Mysql Loadfile - Fatal编程技术网

Php MySQL加载文件和撇号

Php MySQL加载文件和撇号,php,mysql,pdo,apostrophe,mysql-loadfile,Php,Mysql,Pdo,Apostrophe,Mysql Loadfile,我有一个文本文件,其中包含两个字段,用|分隔,并用新行记录 example: L'EQUME|7A Voley|18 L'olivier|158 我有一个MySql表,有3列(id、name、val) //id自动递增 所以我想使用mysql加载文件功能将值插入到name和val中,但我的主要问题是加载文件时使用撇号 如何在通过加载文件查询时添加slahes LOAD DATA INFILE 'data.txt' INTO TABLE table_name FIELDS TERMINATED

我有一个文本文件,其中包含两个字段,用|分隔,并用新行记录

example:
L'EQUME|7A
Voley|18
L'olivier|158
我有一个MySql表,有3列(id、name、val) //id自动递增

所以我想使用mysql加载文件功能将值插入到name和val中,但我的主要问题是加载文件时使用撇号

如何在通过加载文件查询时添加slahes

LOAD DATA INFILE 'data.txt'
INTO TABLE table_name
FIELDS TERMINATED BY '|'
LINES TERMINATED BY '\r\n'
(name, val);

您可以使用
转义人
,但请记住
转义人
和所包含的
不应相同

我假设您希望输入单引号值,并且您的字段用双引号括起来,第一行应该被忽略

试试这样的

LOAD DATA INFILE 'data.txt'
INTO TABLE table_name
FIELDS 
  TERMINATED BY '|'
  ENCLOSED BY '"'
  ESCAPED BY ''
LINES 
  TERMINATED BY '\r\n'
 IGNORE 1 LINES; //if you don't want to ignore first line than remove it

实际上,我正在寻找添加斜杠,以便在显示值(仅名称)时可以使用斜杠将数据填充“DATA.txt”加载到以“|”结尾的表名字段中,以“\r\n”结尾的行忽略1行(@name,val)SET name=QUOTE(@name)“code”加载数据将“DATA.txt”填充到以“|”结尾的表格表格名称字段中,以“\r\n”结尾的行忽略1行(@name,val)SET name=QUOTE(@name)您没有按照我的回答包含封闭和转义的字段ok我使用了您的查询数据ok,但是当我浏览表格结果时我看到的是L'equime而不是L'equime还是正常?非常感谢。