Cantorum 0 Denunciar post Postado Setembro 25, 2008 Duas dúvidas sobre o LOAD DATA INFILE: Em um arquivo txt tenho as seguintes colunas: #col1#;#col2#;#col3#;#col4#;#col5#;#col6#;#col7#;etc... 1 - A coluna5 e a coluna7 do arquivo txt são datas e estão no formato dd/mm/aaaa. Acontece que ao importar para o mysql elas devem ser alteradas para aaaa/mm/dd. Gostaría de saber se é possível fazer essa alteração durante a importação. Para isso estou usando o sequinte comando no PHP: $sql = mysql_query("LOAD DATA INFILE 'c:/arquivo.txt' INTO TABLE arquivo FIELDS ENCLOSED BY '#' TERMINATED BY ';' LINES TERMINATED BY '\r'") or die ("ERRO NO INFILE -- ".mysql_error()); 2 - A segunda dúvida é saber se é possível importar apenas algumas colunas do arquivo txt. #col1#;#col3#;#col4#;#col7#;etc... Compartilhar este post Link para o post Compartilhar em outros sites
giesta 29 Denunciar post Postado Setembro 26, 2008 Da, respondendo as duas coisas de uma vez soh ... LOAD DATA INFILE 'c:/arquivo.txt' INTO TABLE arquivo (@col1,@col2,@col3,@col4,@col5,@col6,@col7) set campo1 = @col1, campo2 = @col2, campo_data = CONCAT( RIGHT(CONCAT(20,SUBSTRING_INDEX(@col3,'/',-1)),4) ,'-', RIGHT(CONCAT(0,SUBSTRING_INDEX(SUBSTRING_INDEX(@col3,'/',2),'/',-1)),2) ,'-', RIGHT(CONCAT(0,SUBSTRING_INDEX(@col3_dia,'/',1)),2) FIELDS ENCLOSED BY '#' TERMINATED BY ';' LINES TERMINATED BY '\r' Compartilhar este post Link para o post Compartilhar em outros sites
Cantorum 0 Denunciar post Postado Setembro 30, 2008 Da, respondendo as duas coisas de uma vez soh ... LOAD DATA INFILE 'c:/arquivo.txt' INTO TABLE arquivo (@col1,@col2,@col3,@col4,@col5,@col6,@col7) set campo1 = @col1, campo2 = @col2, campo_data = CONCAT( RIGHT(CONCAT(20,SUBSTRING_INDEX(@col3,'/',-1)),4) ,'-', RIGHT(CONCAT(0,SUBSTRING_INDEX(SUBSTRING_INDEX(@col3,'/',2),'/',-1)),2) ,'-', RIGHT(CONCAT(0,SUBSTRING_INDEX(@col3_dia,'/',1)),2) FIELDS ENCLOSED BY '#' TERMINATED BY ';' LINES TERMINATED BY '\r' giesta Muito obrigado!! Era isso que eu estava precisando. Compartilhar este post Link para o post Compartilhar em outros sites
AspMan 0 Denunciar post Postado Outubro 3, 2008 Da, respondendo as duas coisas de uma vez soh ... LOAD DATA INFILE 'c:/arquivo.txt' INTO TABLE arquivo (@col1,@col2,@col3,@col4,@col5,@col6,@col7) set campo1 = @col1, campo2 = @col2, campo_data = CONCAT( RIGHT(CONCAT(20,SUBSTRING_INDEX(@col3,'/',-1)),4) ,'-', RIGHT(CONCAT(0,SUBSTRING_INDEX(SUBSTRING_INDEX(@col3,'/',2),'/',-1)),2) ,'-', RIGHT(CONCAT(0,SUBSTRING_INDEX(@col3_dia,'/',1)),2) FIELDS ENCLOSED BY '#' TERMINATED BY ';' LINES TERMINATED BY '\r' giesta Muito obrigado!! Era isso que eu estava precisando. como ficaria para fazer essa mesma função em ASP??!! esbarrei no mesmo problema :s, porém utilizo ASP.. ficaria mto grato com a ajuda!!! EDIT: resolvi com alguns comandos do asp, ficaria assim HOJE=year(now)&"-"&month(now)&"-"&day(now)caso a data seja uma digitada pelo usuário, é só substituir now pela variável q armazena a data digitada :) é isso ae... pode ser de utilidade para alguém ABÇS Compartilhar este post Link para o post Compartilhar em outros sites
giesta 29 Denunciar post Postado Outubro 4, 2008 igual, isso eh do mysql e nao envolve nenhum PHP, Python ou coisa do genero Compartilhar este post Link para o post Compartilhar em outros sites