Selecao DevMedia QUERO SER PRIME

Fórum data em branco #333801

27/11/2006

0

Olá!!
Como faço para gravar uma data em branco no oracle??
Obrigada!


Daia

Daia

Responder

Posts

27/11/2006

Marco Salles

Olá!! Como faço para gravar uma data em branco no oracle?? Obrigada!


por acaso , o tfield que representa o campo tem alguma formatação ????


Responder

Gostei + 0

28/11/2006

Daia

na tabela é do tipo date... estou usando esta função: QuotedStr(dateToOracle(mskDtCorte.Text)), mas como não estou informando data quero grave null... Mas não sei como fazer isso...
Obrigada.


Responder

Gostei + 0

28/11/2006

Emerson Nascimento

como você está passando essa data? via parâmetro numa instrução?


Responder

Gostei + 0

28/11/2006

Daia

Estou fazendo um Insert
QuotedStr(dateToOracle(mskDtCorte.Text)), pegando a data de um MaskEdit (mskDtCorte)
É isso??


Responder

Gostei + 0

28/11/2006

Emerson Nascimento

ok... mas como?

- por concatenação
  instrucao = ´insert tabela (nome, end, data) values (´+edit1.text+´, ´+edi2.text+´, ´+dateToOracle(mskDtCorte.Text)+´)´

  mude para:
  instrucao = ´insert tabela (nome, end, data) values (´+edit1.text+´, ´+edi2.text+´<,valordata>)´
  if (mskDtCorte.Text = ´  /  /    ´) or (mskDtCorte.Text = ´´) then
  begin
    instrucao = stringreplace(instrucao,´,data´,´´,[rfReplaceAll]);
    instrucao = stringreplace(instrucao,´,valordata´,´´,[rfReplaceAll]);
  end
  else
    instrucao = stringreplace(instrucao,´,valordata´,datetoOracle(mskDtCorte.Text),[rfReplaceAll]);

  execute a instrucao

- por parametro
  instrucao = ´insert tabela (nome, end, data) values (:nome, :end, :data)´
  dataset.sql := instrucao;
  dataset.parambyname(´nome´).asstring := edit1.text;
  dataset.parambyname(´end´).asstring := edit2.text;
  if (mskDtCorte.Text = ´  /  /    ´) or (mskDtCorte.Text = ´´) then
    dataset.parambyname(´data´).value := null [b]ou[/b]
    dataset.parambyname(´data´).clear
  else
    dataset.parambyname(´data´).asdatetime := StrToDate(mskDtCorte.Text);

  ou simplesmente retire o parâmetro da instrução:
  instrucao = ´insert tabela (nome, end, data) values (:nome, :end, :data)´
  if (mskDtCorte.Text = ´  /  /    ´) or (mskDtCorte.Text = ´´) then
  begin
    instrucao :=  stringreplace(instrucao,´, :data´,´´,[rfReplaceAll]);
    instrucao :=  stringreplace(instrucao,´, data´,´´,[rfReplaceAll]);
  end;
  dataset.sql := instrucao;
  dataset.parambyname(´nome´).asstring := edit1.text;
  dataset.parambyname(´end´).asstring := edit2.text;
  if (mskDtCorte.Text <> ´  /  /    ´) and (mskDtCorte.Text <> ´´) then
    dataset.parambyname(´data´).asdatetime := StrToDate(mskDtCorte.Text);



Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar