为什么SQL查询有时不能完全加载表?

时间:2013-04-12 03:08:43

标签: mysql loading create-table

CREATE TABLE Food_journal (f_entry_number INT NOT NULL, date DATE, type VARCHAR(40), 
fat_g DECIMAL(5,1), carb_g DECIMAL(5,1),
protein_g DECIMAL(5,1), alcohol_g DECIMAL(5,1), calories INT, pssn INT,
PRIMARYKEY(f_entry_number), FOREIGN KEY(pssn) REFERENCES Patient(ssn));    

LOAD DATA LOCAL INFILE '/home/0/hemeyerj/CSE3241/food_journal.txt' INTO TABLE Food_journal;

food_journal.txt:

1   2013-01-27  carrots 0   15  3   0   72  142969229   
2   2013-02-25  meat    3   0   24  0   124 825324470   
1   2013-01-27  meat    5   0   32  0   173 142969299   
1   2013-02-14  fruit   0   20  1   0   84  507663448   
1   2013-04-01  twinky  4.5 27  1   0   150 812654040

它只将前两行加载到表中。我已检查过标签,甚至完全重新输入了该内容,但它不起作用。我不知道该怎么做。

1 个答案:

答案 0 :(得分:1)

看起来第一列f_entry_number被设置为PRIMARYKEY,这意味着它必须是唯一的。输入的第3行的值为1,已在第一行使用,因此失败。尝试将f_entry_number更改为唯一。