我有一个名为的数据库,有一个mydb
名为mytable
列的表,mytable
我"a","b","c","d"
想将值插入到文件中的这些a,b,c,d
列中mytable
,该文件myfile.txt
的数据顺序与mytable
. 有没有一种简单的方法可以在不使用任何循环的情况下将值从文件中插入到表中?
编辑部分
该表中已经有大量数据,我不想打扰它。而不是仅仅加载数据,我想简单地将值插入表中,而且我不想一个一个地做,而是在一个命令中不使用循环。
#谢谢。
尝试加载数据输入
LOAD DATA INFILE 'data.txt' INTO TABLE tbl_name
FIELDS TERMINATED BY ',' ENCLOSED BY '"'
LINES TERMINATED BY '\r\n'
您应该使用 MySQL 加载器:
LOAD DATA INFILE 'C:/myfile.txt'
INTO TABLE mytable
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n';
您可以使用INFILE
mysql -e "LOAD DATA INFILE 'ls.dat' INTO TABLE t1" db1
如果您使用 csv 文件而不是 txt 文件会更好。如果您想在 openoffice 或 MS Office 中编辑数据,然后将其导入数据库,这将是有益的。对于 MySql,您可以使用“LOAD DATA INFILE”选项。它快速高效,唯一的前提是您应该知道表的结构。
将文件另存为 CSV (myfile.csv) 文件
然后发出命令
LOAD DATA INFILE 'myfile.csv'
INTO TABLE my_table
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
(Col1, Col2, Col2, Col4)
当您转换为 CSV 格式时,您可能必须删除 Office 程序将附加的任何空白单元格