Я хочу иметь возможность переформатировать дату из моего CSV-файла в формат гггг-мм-дд, необходимый для mysql. Файл, который мне дали, имеет формат «10/22/1988». Вот код, с которым я работаю до сих пор.
**load data infile 'C:/ProgramData/MySQL/MySQL Server 8.0/Uploads/Driver.csv'
into table Driver
fields terminated by ','
lines terminated by '\r\n'
ignore 1 rows
(DriverID,DriverFirst,DriverLast,SSN,@DOB,@StartDate,@EndDate,Address,City,State,Zip,Phone,Cell,Mileage,@Review,DrivingRecord)
SET
DOB = DATE_FORMAT(@DOB, "%Y %M %D"),
StartDate = DATE_FORMAT(@DOB, "%Y %M %D"),
EndDate = nullif(DATE_FORMAT(@EndDate, "%Y %M %D"),''),
Review = nullif(DATE_FORMAT(@Review, "%Y %M %D"),'')
;**
И вот как я построил свой стол:
create table Driver
(
DriverID smallint not null auto_increment,
DriverFirst varchar(20) not null,
DriverLast varchar(20) not null,
SSN varchar(9) not null,
DOB date not null,
StartDate date not null,
EndDate date null,
Address varchar(30) not null,
City varchar(30) not null,
State varchar(2) not null,
Zip varchar(6) not null,
Phone varchar(10) not null,
Cell varchar(10) not null,
Mileage decimal(3,2) null,
Review date null,
DrivingRecord char(1) not null,
constraint pk_Drivers primary key clustered (DriverID asc)
);
MySQL выдает ошибку, если ячейка пуста, поэтому я работал с функцией nullif ().
Пожалуйста, сообщите.