Duvida em SQL

The Dealer

Power Member
Preciso de fazer o update de um campo (chave) de uma tabela Dados(numero,(...), chave) do tipo varchar, através do upload de um ficheiro .txt.

Para tal, estou a utilizar o seguinte query

PHP:
$sql = "LOAD DATA INFILE '$target' REPLACE INTO TABLE Dados(Chave);
O problema é que como é a opção de um determinado elemento (que tem um numero só dele), pretendo que apenas o seu respectivo campo seja alterado. Para tal precisava de adicionar algo como uma clausula,

Código:
 WHERE Numero = '".$_SESSION['username']."'";
Mas pelo LOAD DATA INFILE, penso que não seja possível conciliar essa sintaxe (sem o WHERE cria-me um registo novo tabela com os campos todos a DEFAULT e o chave com o conteudo do ficheiro, e com dá-me erro de sintaxe).

Será que me poderiam ajudar?

EDIT: Acrescentei SET Numero = '".$_SESSION['username']."'"; (em vez do WHERE), e acrescentou outro registo numero (o que passa na variavel de sessão)...
 
Última edição:
ups, pensava que querias substituir o ficheiro da base de dados, em relação a retirar informações do mesmo, já tenho um tópico criado não muito tempo antes do teu a perguntar o mesmo onde já deram umas dicas podes ir lá ver, lol.
 
ups, pensava que querias substituir o ficheiro da base de dados, em relação a retirar informações do mesmo, já tenho um tópico criado não muito tempo antes do teu a perguntar o mesmo onde já deram umas dicas podes ir lá ver, lol.

Ficheiros Word e Excel são ficheiros binários é completamente diferente. Requer uso de um parser.
 
Desculpa a ignorancia de novato mas o que é um parser?

Não sou a melhor pessoa para te responder a essa pergunta tecnicamente, mas vejamos: imagina um ficheiro .txt. Tu abres e visualizas perfeitamente o conteudo. Agora imagina um ficheiro binário.dat (não vale criar um .txt e alterar-lhe a extensão). Faças o que fizeres não consegues visualizar correctamente o conteudo, tudo o que conseguirás ver é "uma data de gatafunhos".

Ora se ficheiros .doc e .xls são binário, tu tecnicamente não deverias conseguir abrir estes ficheiros (experimenta abrir um destes ficheiros com o notepad vai ver o que acontece). Daí entrar o parser, o parser integrado (no word ou excel), vai interpretar o binário dos ficheiros, e transformá-lo em conteudo "visualizavel".

Agora tu podes fazer um parser em PHP (existe até um ou mais na net). Eu pessoalmente nunca consegui por a funcionar um parser de .xls correctamente, mas se tu o conseguires, vens aqui dizer :P
 
Back
Topo