Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Qual a diferença entre esses alter tables?

Alguém poderia me explicar qual a diferenã entre meu código e a solução proposta pelo exercício?Quais são as vantagens e desvantagens de usar um ou outro ?

Meu código

ALTER TABLE COMPRAS MODIFY OBSERVACOES varchar(255) not null ;

Solução do exercício

ALTER TABLE COMPRAS MODIFY COLUMN OBSERVACOES TEXT NOT NULL
2 respostas
solução!

Olá Álvaro,

A diferença é que o tipo VARCHAR suporta até 65.535 caracteres, enquanto que o maior tipo de TEXT (que é o LONGTEXT) suporta 4.294.967.295 caracteres. Então com isso você já sabe quando usar um e outro. Se o valor que será gravado em uma coluna pode ser gravado com um VARCHAR, é recomendado usá-lo. Evite usar TEXT a não ser que necessite.

Note que isso é somente para MySQL, em outros bancos de dados pode ter outros significados, no SQL Server da Microsoft por exemplo, ambos tem a mesma capacidade de armazenamento, porém o tipo TEXT está deprecated, significando que em próximas versões será removido completamente e ficará somente o VARCHAR.

Abraços.

oi Álvaro

o COLUMN é opcional. Agora a diferença entre varchar e Text é que varchar comporta um tamanho mais limitado de meméria enquanto o text comporta um valor muito maior.