Carregar infile local de dados com hash e data usando o conjunto
Estou no limite nisso. Eu pesquisei isso até a morte e parece que não consigo resolver. Eu tenho a seguinte instrução PHP:
$sqlstatement="LOAD DATA LOCAL INFILE '$temp' INTO TABLE contacts FIELDS
TERMINATED BY ','
LINES TERMINATED BY '\r'
IGNORE 1 LINES
(@ignore, @ID, @Name, @Email, @Type, @Hash, @Time)
SET Date_Update=date('Y-m-d')
";
Meu arquivo CSV inclui a seguinte linha de cabeçalho: ID, Nome do usuário, Email do usuário, Tipo.
ID User Name User Email Type
12345 Jackson, F [email protected] Level 1
67890 Stewart, J [email protected] Level 1
43210 Fuller, T [email protected] Level 2
62295 Lewis, M [email protected] Level 2
O arquivo CSV também possui campos extras que não precisam ser importados. Esperava poder selecionar quais campos importar. Não tenho certeza da técnica.
Minha tabela MYSQL possui os seguintes campos: Tag (incremento automático), ID, Nome, Email, Tipo, Hash, Date_Update, Time_Update.
Não consigo descobrir como usar o recurso SET neste comando. Defino @ignore para pular a tag (campo de incremento automático).
Como faço para obter o campo "Nome de usuário" do CSV no campo "Nome" do MYSQL?Como faço para gerar a data de hoje para o campo MYQL "Date_Update"? Eu tentei SET Date_Update = date ('Y-m-d'), mas ele aparece em branco.Como faço para gerar um Hash a partir do campo "ID" do CSV? Tentei Hash = Hash ('sha384', $ pre. @ ID. $ Suf)Estou perdida. Qualquer ajuda seria apreciada.