MySQL Blob para Texto (dados e tipo de dados)
Pergunta
Eu tenho um banco de dados mysql que contém conteúdo como um blob, por qualquer razão os desenvolvedores optaram por utilizar uma bolha está fora do meu controle. É possível converter os dados em texto e o tipo de dados de texto?
Solução
você já tentou o comando alter table?
alter table mytable change mycolumn mycolumn text;
http://forums.mysql.com/ read.php? 103,164923,167648 # msg-167648 parece que você pode usar CAST.
Você pode criar uma coluna nova (texto), então preenchê-lo com um comando de atualização:
update mytable set myNewColumn = CAST(myOldColumn AS CHAR(10000) CHARACTER SET utf8)
Outras dicas
Convertendo o campo de blob de texto trunca todos os caracteres> 127. No meu caso, temos lotes de caracteres europeus, pelo que esta não era uma opção. Aqui está o que eu fiz:
- Criar campo temporário como texto
- Copiar o campo blob para o campo de temperatura: UPDATE tbl SET col_temp = Converter (col USANDO latin1); Neste caso minha blob realizada latin1 codificado caracteres
- Converter campo real de texto tipo de dados
- Copiar temp para campo real
- coluna Remover temperatura
Não é exatamente simples, mas funcionou e sem perda de dados. Estou usando Versão: '5.1.50-comunidade'