Gravar campo NULL no banco
Bom dia Galera,
Estou precisando de uma ajuda não sou muito bom no delphi.
Estou usando o componente Query dentro dele faço o comando sql para inserção.
INSERT INTO [tbPais]
([Cod_pais]
,[Cod_moeda]
,[Nome_pais]
,[DDI]
,[Apelido_pais]
,[Cod_bacen])
VALUES
(:Cod_pais,
:Cod_moeda,
:Nome_pais,
:DDI,
:Apelido_pais,
:Cod_bacen)
Ai passo os parâmetros para insert no delphi
QueryInsert.ParamByName('Cod_pais').AsString := ECodPais.Text;
QueryInsert.ParamByName('Cod_moeda').AsString := DBMoeda.KeyValue;
QueryInsert.ParamByName('Nome_pais').AsString := ENomePais.Text;
QueryInsert.ParamByName('DDI').AsString := ECodDDI.Text;
QueryInsert.ParamByName('Apelido_pais').AsString := EApelidoPais.Text;
QueryInsert.ParamByName('Cod_bacen').AsString := ECodBacen.Text;
Se o usuário esquecer de informar o DDI quero gravar NULL no banco, apenas conseguir gravar em branco.
Att
João Antonio
Estou precisando de uma ajuda não sou muito bom no delphi.
Estou usando o componente Query dentro dele faço o comando sql para inserção.
INSERT INTO [tbPais]
([Cod_pais]
,[Cod_moeda]
,[Nome_pais]
,[DDI]
,[Apelido_pais]
,[Cod_bacen])
VALUES
(:Cod_pais,
:Cod_moeda,
:Nome_pais,
:DDI,
:Apelido_pais,
:Cod_bacen)
Ai passo os parâmetros para insert no delphi
QueryInsert.ParamByName('Cod_pais').AsString := ECodPais.Text;
QueryInsert.ParamByName('Cod_moeda').AsString := DBMoeda.KeyValue;
QueryInsert.ParamByName('Nome_pais').AsString := ENomePais.Text;
QueryInsert.ParamByName('DDI').AsString := ECodDDI.Text;
QueryInsert.ParamByName('Apelido_pais').AsString := EApelidoPais.Text;
QueryInsert.ParamByName('Cod_bacen').AsString := ECodBacen.Text;
Se o usuário esquecer de informar o DDI quero gravar NULL no banco, apenas conseguir gravar em branco.
Att
João Antonio
João Françozo
Curtidas 0
Melhor post
Ronaldo Lanhellas
11/07/2014
Ou, dependendo do banco você pode criar uma trigger no BEFORE INSERT que checa se o DDI é "branco", você coloca nulo.
GOSTEI 1
Mais Respostas
Fabiano Carvalho
11/07/2014
Qual banco de dados?
Voce pode definiir a regra diretamente no banco de dados.
Voce pode definiir a regra diretamente no banco de dados.
GOSTEI 0
Joel Rodrigues
11/07/2014
Teste o seguinte:
if ECodDDI.Text <> '' then
QueryInsert.ParamByName('DDI').AsString := ECodDDI.Text
else
QueryInsert.ParamByName('DDI').Value = null;
GOSTEI 0