加载数据本地infile导入错误

ztyzrc3y  于 2021-06-23  发布在  Mysql
关注(0)|答案(1)|浏览(331)

我目前正在从事一个java项目
我有一个用char做的2dMap(在一个文本文件中):缺少的空间是为了让Map看起来正确


* ___________________________*;

|............................|;
|............................|;
|............................|;
|............................|;

* ___*.*_*____________*_*.*___*;

|E..*.|.OOO.O.O.O.OOO..|.*..E|;
|**...|.OO...O..O.OOO..*...**|;
|**...*.OOO.O.O.O.O.O..|...**|;
|.....|................|.....|;

* _____*................|.....*;

|.....|................|.....|;
|.J...|................|.....|;
|_____*________________*_____|;
|E....................M......|;

* ;___________________________*;

我正在使用“加载数据本地填充”将此端插入表中:
表代码:

CREATE TABLE `lorann`.`Niveau` 
( `ID_Niveau` INT(20) NOT NULL AUTO_INCREMENT, `contenu` text(300)
 NOT NULL, PRIMARY KEY (`ID_Niveau`)) ENGINE = MyISAM;

加载数据本地填充“导入”:

"C:/Utilisateurs/Moham/desktop/Bureau/Cesi/Ressources/lvl.txt"
    FIELDS TERMINATED BY '\n' ENCLOSED BY ';' 
    LINES TERMINATED BY '\n'

但我的问题是为什么它会回到我身边:它会回到我身边的形象
id是0,这意味着它有增量吗?有什么问题,我试图改变语法和格式的Map,我试图导入遗憾的是,它不工作
谢谢你的帮助

rjee0c15

rjee0c151#

评论太小,无法添加此内容,请将建议放在此处。试试这个
用引号将内容括起来:

"*___________________________*;
|............................|;
|............................|;
|............................|;
|............................|;

* ___*.*_*____________*_*.*___*;

|E..*.|.OOO.O.O.O.OOO..|.*..E|;
|**...|.OO...O..O.OOO..*...**|;
|**...*.OOO.O.O.O.O.O..|...**|;
|.....|................|.....|;

* _____*................|.....*;

|.....|................|.....|;
|.J...|................|.....|;
|_____*________________*_____|;
|E....................M......|;

* ;___________________________*;"

然后将“加载数据”命令更改为:

LOAD DATA LOCAL INFILE "C:/Utilisateurs/Moham/desktop/Bureau/Cesi/Ressources/lvl.txt"
INTO TABLE `lorann`.`Niveau` 
    FIELDS TERMINATED BY ',' ENCLOSED BY '"' 
    LINES TERMINATED BY '\n' 
    (contenu)

基本上说字段是用逗号分隔的(在这种情况下是多余的,因为您只导入一个字段…id是自动递增的)
内容包含在引号中 "" . 理论上应该允许你有断线和模糊 ; 在内容中键入字符
最后说插入 contenu 字段仅作为id将自动生成。
可能无法使用
LINES TERMINATED BY \n 在您的例子中,行确实跨越多行。我希望 ENCLOSED BY 将告诉mysql解析器忽略引号内的\n " . 如果这不起作用,可以用分号或其他东西作为一个符号 LINE TERMINATED BY

相关问题