MYSQL CAPACIDADE COLUNA TIPO TEXT
em um banco mysql tenho uma coluna (text), capacidade de 65535, acontece que agora o Cliente chegou nesse campo a 32237 e aconteceu o data too long for columm, se a quantidade é de 32237 e o campo suporta 65535, porque sera, alguém sabe ?
Obrigado.
Citação:De fato, 2^16 somam 65535 bytes. Que texto o usuário está tentando armazenar?
São quadros clÃnicos de animais, a clinica é antiga e tem movimentação monstro.
Mas olha só, encontrei isso e deixando como MEDIUMTEXT resolveu meu problema, pelo menos por hora, vamos ver se alguma consequencia a mais vira.
Obrigado KERPLUNK por se interessar, se achar necessário pode reabrir o Tópico.
Citação:Um VARCHAR permite 65535 caracteres (bytes se estiver usando uma versão antiga < 5.0). Mas este limite é menor na prática. O tamanho da linha também é este, por isto você não pode ter várias colunas deste tipo com tamanhos grandes. Uma única coluna pode encher toda a linha ou pode ter centenas de colunas VARCHAR. Como o próprio nome diz, o tamanho efetivamente ocupado varia conforme a necessidade.
Um TEXT permite 65535 bytes. E esta diferenciação é importante se estiver usando UTF-8 ou outra codificação multibyte já que um caractere pode ocupar 3 bytes (isto pode mudar de acordo com o charset escolhido - o uso de 3 bytes era um erro no UTF-8 padrão inicial, por isso existe outro charset).
Assim como o TINYTEXT suporta 255 bytes. E se você precisa mais que isto tem que usar MEDIUMTEXT (16MB) ou LONGTEXT (4GB).
O armazenamento desses tipos TEXT é feito fora da linha normal, fica em área especÃfica e não ocupa espaço na linha (exceto pelo apontador, que é bem pequeno, para a localização do dado).