Manda o esquema da tabela aê, eu não consegui reproduzir esse código de erro. O melhor que eu consegui foi
create table pol (
id int,
nome varchar(2));
tentando alterar
alter table pol modify column nome varchar(1) default '' not null;
ERROR 1136 (21S01): Column count doesn't match value count at row 1
para esse erro eu corrijo colocando valor nos campos c valor null e depois mudando a definição
update pol set nome='';
alter table pol modify column nome varchar(1) default '' not null;
mudar a definição da tabela quando já tem dados populados às vezes pode dar problema. Manda o esquema da tabela p gente ver.
3. Re: Erro no modify [RESOLVIDO]
leandropscarduausa Ubuntu
Post recolhido
Enviado em 24/12/2021 - 10:25h
Mauriciodez escreveu:
Pessoas .. possuo o campo 'profissao varchar (10)', estou tentando modificar e recebo um erro, o que está errado ??
mysql> alter table pessoas modify column profissao varchar(20) default '' not null;
ERROR 1138 (22004): Invalid use of NULL value
mysql>
Já existem registros nessa tabela? Se tiver, algum deles está preenchido com null no campo profissão?
4. Re: Erro no modify [RESOLVIDO]
Mauriciodezusa Debian
Post recolhido
Enviado em 24/12/2021 - 14:40h
leandropscardua escreveu:
Já existem registros nessa tabela? Se tiver, algum deles está preenchido com null no campo profissão?
a tabela já está populada, mas esse campo eu inseri depois de popular a tabela ( é um tutorial e a intenção é justamente modificar o campo ).
------------------------------------------------------| Linux User #621728 |------------------------------------------------------
" Nem sempre é amigo aquele que te tira do buraco !!! ( Saddam Hussein )"
------------------------------------------------------| Linux User #621728 |------------------------------------------------------
5. Re: Erro no modify [RESOLVIDO]
Mauriciodezusa Debian
Post recolhido
Enviado em 24/12/2021 - 19:40h
fiz a correção em uma tabela não populada e realmente funcionou tranquilamente. mas se eu precisar inserir e editar um campo em um BD com trocentos registros ... vai dar ruim ??? no tutorial a pessoas da o comando de modify com a tabela populada e vai de boa .. o tuto é de 2016, será que tem a ver com a versão do mysql e/ou fato dela estar fazendo isso no windows ??
------------------------------------------------------| Linux User #621728 |------------------------------------------------------
" Nem sempre é amigo aquele que te tira do buraco !!! ( Saddam Hussein )"
------------------------------------------------------| Linux User #621728 |------------------------------------------------------
6. Re: Erro no modify [RESOLVIDO]
Mauriciodezusa Debian
Post recolhido
Enviado em 25/12/2021 - 02:20h
consegui aqui ... segue
SET SQL_SAFE_UPDATES = 0;
UPDATE pessoas SET profissao='';
ALTER TABLE pessoas MODIFY profissao varchar(20) not null;
SET SQL_SAFE_UPDATES = 1;
fiz certo ?
------------------------------------------------------| Linux User #621728 |------------------------------------------------------
" Nem sempre é amigo aquele que te tira do buraco !!! ( Saddam Hussein )"
------------------------------------------------------| Linux User #621728 |------------------------------------------------------
7. Re: Erro no modify [RESOLVIDO]
SamLusa XUbuntu
Post recolhido
Enviado em 25/12/2021 - 10:48h
Mauriciodez escreveu:
Pessoas .. possuo o campo 'profissao varchar (10)', estou tentando modificar e recebo um erro, o que está errado ??
mysql> alter table pessoas modify column profissao varchar(20) default '' not null;
ERROR 1138 (22004): Invalid use of NULL value
mysql>
SamL escreveu:
Não existe a palavra chave column depois do modify.
column existe velho, ele pode ser omitida, no caso ela é opcional !!!
abçs !!!
------------------------------------------------------| Linux User #621728 |------------------------------------------------------
" Nem sempre é amigo aquele que te tira do buraco !!! ( Saddam Hussein )"
------------------------------------------------------| Linux User #621728 |------------------------------------------------------
9. Re: Erro no modify [RESOLVIDO]
leandropscarduausa Ubuntu
Post recolhido
Enviado em 26/12/2021 - 09:37h
Mauriciodez escreveu:
fiz a correção em uma tabela não populada e realmente funcionou tranquilamente. mas se eu precisar inserir e editar um campo em um BD com trocentos registros ... vai dar ruim ??? no tutorial a pessoas da o comando de modify com a tabela populada e vai de boa .. o tuto é de 2016, será que tem a ver com a versão do mysql e/ou fato dela estar fazendo isso no windows ??
------------------------------------------------------| Linux User #621728 |------------------------------------------------------
" Nem sempre é amigo aquele que te tira do buraco !!! ( Saddam Hussein )"
------------------------------------------------------| Linux User #621728 |------------------------------------------------------
O sql tem uma versão padrão e tem as "variantes" de cada banco, mas a versão padrão normalmente todo banco aceita independente de sistema operacional. Em relação à tabela populada sempre é um problema. Qdo vc vai aumentar o tamanho não é tanto, mas se vc for diminuir pode dar muita dor de cabeça. Mas esse update sem where é uma das operações mais perigosas e todo cuidado é pouco!