Armazenar campos vazios usando Mysql+java

5 respostas
leobr84

Estou elaborando um formulário onde o usuário será capaz de armazenar e editar informações. As vezes há a necessidade de editar o formulário e o usuário decide apagar o conteúdo de de determinado campo (deixar o campo em branco). O problema que estou tendo é o armazenamento desses campos em branco no banco (mysql), gostaria que eles ficassem do tipo NULL no banco, mas está armazenando como NULL do tipo String. Porque? Qual a solução para que o campo vazio seja armazenado como um campo Null na tabela do banco?
(estou usando mysql + java)

5 Respostas

The_Punisher

E ai cara blz?

Uma idéia é utilizar valores padrão para o banco (isso fica preso/ fixo na estrutura do banco) se estiver utilizando ferramentas administrativas do banco (navicat/ workbench), nos campos que vc deseja usar nulo, deixe-os com o valor DEFAULT null

O mesmo comando server para linhas em branco ex:

CREATE TABLE aceita_nulo( id int not null, nome varchar(50) null DEFAULT null... )

São apenas idéias, mas nesse caso, creio que ao inserir ou atualizar dados da sua tabela, caso entre valores em branco, a própria base se encarrega de preenchê-los com null

abraço

LPJava

cara dar para chegar ate proximo do que vc quer, mas sua pergunta ta meia que enrolada. nao dar para ser direto e especifico nao?
se quer permitir campos null no bd, diga que ele aceita null, use uma ferramenta para o mysql que vai ajudar bastante caso nao esteja usando, pois la vc define o valor default para o campo, caso esteja tendo problema em executar via comando.

leobr84

The_Punisher:
E ai cara blz?

Uma idéia é utilizar valores padrão para o banco (isso fica preso/ fixo na estrutura do banco) se estiver utilizando ferramentas administrativas do banco (navicat/ workbench), nos campos que vc deseja usar nulo, deixe-os com o valor DEFAULT null

O mesmo comando server para linhas em branco ex:

CREATE TABLE aceita_nulo( id int not null, nome varchar(50) null DEFAULT null... )

São apenas idéias, mas nesse caso, creio que ao inserir ou atualizar dados da sua tabela, caso entre valores em branco, a própria base se encarrega de preenchê-los com null

abraço

Justamente, man. O que eu queria é que o valor do campo ficasse com esse Null Default apos eu realizar um UPDATE e apagar o conteudo do campo. Mas como fazer isso atraves de um ResultSet em java?

Abraço,
PAZ!

leobr84

LPJava:
cara dar para chegar ate proximo do que vc quer, mas sua pergunta ta meia que enrolada. nao dar para ser direto e especifico nao?
se quer permitir campos null no bd, diga que ele aceita null, use uma ferramenta para o mysql que vai ajudar bastante caso nao esteja usando, pois la vc define o valor default para o campo, caso esteja tendo problema em executar via comando.

É, posso ter falhado ao me expressar.
Tou usando uma string para realizar um UPDATE em uma tabela no banco, a qual ela poderá ter campos “vazios”, ou seja… Uma informação que antes existia poderá ser apagada e a minha intensão é setar o campo para Null.
Ex.: Quando criamos uma tabela no mysql, por default os campos ganham valores NULL. Então inseri informação nesse campo, só que quando realizo um UPDATE apagando a informação contida nesse campo, gostaria que o valor do campo fosse NULL… E não vazio nem Null do tipo String. Ficou melhor?

Obrigado.

LPJava

leobr84:
LPJava:
cara dar para chegar ate proximo do que vc quer, mas sua pergunta ta meia que enrolada. nao dar para ser direto e especifico nao?
se quer permitir campos null no bd, diga que ele aceita null, use uma ferramenta para o mysql que vai ajudar bastante caso nao esteja usando, pois la vc define o valor default para o campo, caso esteja tendo problema em executar via comando.

É, posso ter falhado ao me expressar.
Tou usando uma string para realizar um UPDATE em uma tabela no banco, a qual ela poderá ter campos “vazios”, ou seja… Uma informação que antes existia poderá ser apagada e a minha intensão é setar o campo para Null.
Ex.: Quando criamos uma tabela no mysql, por default os campos ganham valores NULL. Então inseri informação nesse campo, só que quando realizo um UPDATE apagando a informação contida nesse campo, gostaria que o valor do campo fosse NULL… E não vazio nem Null do tipo String. Ficou melhor?

Obrigado.

ah entendi, bem ai o case-sensitive deveria entrar em acao, mas no mysql null, NULL, Null sao as mesmas coisas.

Criado 20 de abril de 2010
Ultima resposta 21 de abr. de 2010
Respostas 5
Participantes 3