使用MySQL数据库,我想导入一个包含13列和120行的csv文件。我想把它们上传到一张桌子里。
这是我的命令:
mysql> load data local infile 'restaurants.csv'
into table restaurants_restaurant fields
terminated by ',' enclosed by '"' lines terminated by '\n';
以下是报道的内容:
Query OK, 1 row affected, 4 warnings (0.05 sec)
Records: 1 Deleted: 0 Skipped: 0 Warnings: 4
只添加了一行,只是部分?我做错了什么?
我的表结构:
class Restaurant(models.Model):
name = models.CharField(max_length=200)
category = models.CharField(max_length=200)
city = models.CharField(max_length=200)
location= models.CharField(max_length=200)
address= models.CharField(max_length=500)
phone_number= models.IntegerField()
email= models.CharField(max_length=200)
description= models.CharField(max_length=2000)
hours= models.CharField(max_length=200)
photos= models.CharField(max_length=200)
price= models.CharField(max_length=200)
rating= models.IntegerField()
review= models.CharField(max_length=2000)
我的csv的前4行:
American Burger,American,Dhaka,,,,,,,,2 to 4,4
ARIRANG,Korean,Dhaka,,"House 3, Road 51, Gulshan 2, Dhaka, Bangladesh.",(88-02) 989-6453,,,,,,
Aroma,,Dhaka,,,,,,,,15 to 20,3.5
Bacaru,,Dhaka,,,,,,,,,4
答案 0 :(得分:1)
在CSV文件行分隔符中是(0D 0A)。因此,您需要使用'\ r \ n'作为行分隔符 -
...
lines terminated by '\r\n'
答案 1 :(得分:0)
如果您的表格中存在任何数据文件行违反的唯一约束,那么LOAD DATA INFILE
将跳过它们,如本文所示:
https://stackoverflow.com/a/20913896/445131
删除表上的所有唯一约束并重试,或者删除文本文件中每行的每列中的重复项,然后重试。