我试图使用不同的.txt文件填充一个表,但是每次我想包含或添加一个新文件时,以前的文件都会被覆盖,我不确定为什么会发生这种情况。
我就是这样构建这个表的--我假定主键有问题
CREATE TABLE BONDS(
CUSIP varchar(15) NOT NULL,
Price decimal(8,2) NOT NULL,
Spot varchar(15),
Date_Priced varchar(55) not null,
Broker varchar(55) not null,
primary key(CUSIP)
);这就是我导入.txt文件的方式
load data local infile 'c:/temp/test.txt'
into TABLE BONDS
FIELDS TERMINATED BY ';'谢谢你的帮助
发布于 2020-04-13 02:30:48
也许您应该更改您的主键列。
主键应该是一个整数AUTO_INCREMENT‘’ed。
CREATE TABLE Persons (
Personid int NOT NULL AUTO_INCREMENT,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Age int,
PRIMARY KEY (Personid)
);有关AUTO_INCREMENT https://www.w3schools.com/sql/sql_autoincrement.asp的更多信息
有关LOAD DATA https://tecfa.unige.ch/guides/mysql/man/manuel_LOAD_DATA.html的更多信息
发布于 2020-04-13 04:43:47
只需重组您的表,添加一个新的列id int,删除先前的主键约束并添加id作为主键,然后使用以下查询
load data local infile 'c:/temp/test.txt'
into TABLE BONDS (@dummy, CUSIP,Price,Spot,Date_Priced,Broker)
FIELDS TERMINATED BY ';'https://stackoverflow.com/questions/61175901
复制相似问题