Pesquisa SQL, expressão

Ola pessoal, estou com uma dificuldade, alguem poderia me ajudar??

Preciso fazer que ao executar o SQL eu selecione todos os registros da tabela que tenham um determinado campo vazio.
Por Exemplo: em uma tabela de contratos, preciso que chame apenas os contratos que tenham o campo da coluna “Janeiro” vazias.
Como fazer isso?


                String sql = " select * from Contratos where Janeiro !="+null;     //????????????????
                obj_access.executeSQL(sql);

Como eh o simbolo de diferente na linguagem sql ??
se o numero for registrado como String devo colocar null, certo ???

Para comparar um campo com NULL, use “IS NULL” ou “IS NOT NULL”. Não se pode usar o operador de comparação.

String sql = " select * from Contratos where Janeiro IS NOT NULL";

naoki420,

o símbolo de diferente em sql eh <>, porém o que vc deve fazer eh o q o thingol falou, usar IS NULL ou IS NOT NULL na sua query.

[]'ss!!

Pronto obrigado.

Estou usando esse codigo, porem nao estao aparecendo todos os registros que estao null.

           try {
                
               obj_access.executeSQL("select * from Contratos where Jan IS NULL");          //  Ok
               obj_access.resultset.first();
           
               JOptionPane.showMessageDialog(null, "O contrato é : "+obj_access.resultset.getString("Contrato"));  //   Aqui!!!

                           //  Como faco para mostrar os outros que tambem estao null, e nao somente o primeiro da tabela???
               }

[quote=leonickel]naoki420,

o símbolo de diferente em sql eh <>, porém o que vc deve fazer eh o q o thingol falou, usar IS NULL ou IS NOT NULL na sua query.

[]'ss!![/quote]
pode usar != para diferente tbm

!= == <> :smiley:

vc vai precisar iterar o result set, pq dentro dele voltará uma lista dos registros que estão com o valor null conforme vc especificou na query…

faça um while mais ou menos assim

try
{
         obj_access.executeSQL("select * from Contratos where Jan IS NULL");
         while(obj_access.resultset.next())
         {
               JOptionPane.showMessageDialog(null, "O contrato é : "+obj_access.resultset.getString("Contrato"));
         }
}
.....

vc precisará alterar a sua lógica para mostrar todos os contratos no mesmo JOptionPane, esse exemplo foi soh para ilustrar o laço.

[]'ssss!!!