Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/60.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
mysql[第1行被截断;它包含的数据多于输入列]错误_Mysql_Csv_Import From Csv_Utf8mb4 - Fatal编程技术网

mysql[第1行被截断;它包含的数据多于输入列]错误

mysql[第1行被截断;它包含的数据多于输入列]错误,mysql,csv,import-from-csv,utf8mb4,Mysql,Csv,Import From Csv,Utf8mb4,我的文本文件是这样的。 我的桌子在这里 CREATE TABLE news( num INT auto_increment primary key, link VARCHAR(150), date INT, title VARCHAR(150) unique, description TEXT ); 我试着 LOAD DATA INFILE 'test.txt' INTO TABLE news CHARACTER SET utf8mb

我的文本文件是这样的。

我的桌子在这里

CREATE TABLE news(
    num INT auto_increment primary key,
    link VARCHAR(150),
    date INT,
    title VARCHAR(150) unique,
    description TEXT 
);
我试着

LOAD DATA INFILE 'test.txt'
    INTO TABLE news
    CHARACTER SET utf8mb4
    FIELDS
    TERMINATED BY ', ' OPTIONALLY ENCLOSED BY '"' 
    LINES
    TERMINATED BY '\n' (link, date, title, description);

但它不工作我的错误是什么?

您的输入文件有四列,如下所示

url,month,title,"description": data 
CSV导入将在每个描述列的开头包含单词
“description”:

因此,从您的命令中删除由“”包围的
(可选),您应该已经准备好了

顺便说一下,请确保表定义中提到了
utf8mb4
字符集(或者输入中的某些字符可能无法正确表示)。为了获得最佳结果,不要依赖服务器默认值来选择字符集

CREATE TABLE news(
            num INT auto_increment primary key,
           link VARCHAR(150),
           date INT,
           title VARCHAR(150) unique,
    description TEXT 
)
COLLATE 'utfmb4_general_ci';

这个错误是因为有选择地被
括起来了。
我以前也遇到过同样的问题,通过简单的调整就解决了这个问题。 只需在“Fields”关键字之后立即使用封闭的by子句。
因此,您的代码类似于:

LOAD DATA INFILE 'test.txt'
INTO TABLE news
CHARACTER SET utf8mb4
FIELDS OPTIONALLY ENCLOSED BY '"' 
TERMINATED BY ', ' 
LINES
TERMINATED BY '\n' (link, date, title, description);

@Madhur Bhaiya哦…我如何从(链接、日期、标题、描述)开始?num是自动增量字段,所以我不想在我的文本中写入它可能是您需要mediumtext..或者more@scaisEdge这与我在描述中使用“LONGTEXT”类型的结果相同。@sangoh您的MySQL版本是什么?@MadhurBhaiya我的版本是8.0.12谢谢。”描述是我的错。我会移除这个。!!谢谢我是规范化描述字段,没有特殊字符,所以utfmb4不需要我!