Fórum Insert em tabela temporária #328821

06/09/2006

0

Boa tarde,

Fiz a criação de uma tabela temporária com a procedure abaixo, só que ao executar um insert ocorreu o access violation. Alguém sabe como posso fazer o insert para poder visualizar os dados em um dbgrid?


TabTemp:=TTable.Create(Self);
TabTemp.DatabaseName := ´c:\´;
TabTemp.TableName := ´temp01´;
TabTemp.TableType := ASCII;

with TabTemp.FieldDefs do
begin
Clear;
Add (´Datahora´, ftString, 19, false);
Add (´Formularios´, ftString, 25, false);
Add (´Controle´, ftString, 25, false);
Add (´Mensagem´, ftString, 255, false);
end;

TabTemp.CreateTable;
TabTemp.Open;

Obrigado

Airton


Airoosp

Airoosp

Responder

Posts

07/09/2006

Micheus

Este exemplo(fiz outro dia) e funcionou perfeitamente comigo:
  Table2 := TTable.Create(Self);
  try
    Table2.DatabaseName := ´C:\TEMP´; { um alias BDE ou diretório}
    Table2.TableName := ´client00´; { extensão é opcional - será gerada automaticamente }
    Table2.TableType := ttASCII; { deve ser especificado quando se cria uma tabela}
    { definindo alguns campos}
    with Table2.FieldDefs do
    begin
      Add(´Codigo´, ftString, 5, true);  // o TRUE significa que é requerido - não pode ser nulo
      Add(´CodProd´, ftString, 5, true);
      Add(´Nome´, ftString, 20, false);
      Add(´Cidade´, ftString, 10, false);
      Add(´UF´, ftString, 2, false);
    end; { "with Table2.FieldDefs" }
    Table2.CreateTable;

    Table2.Open;
    Table2.Insert;
    try
      Table2.FieldByName(´Codigo´).Value := ´002´;
      Table2.FieldByName(´Nome´).Value := ´Micheus´;
      Table2.Post;
    except
      Table2.Cancel;
    end;
    Table2.Free;
  Except
    MessageDlg(´Error na Criação da Tabela´, mtError, [mbOK],0);
  end; { try...except }



Responder

Gostei + 0

08/09/2006

Airoosp

Bom dia,

Entendi o que você fez, acontece que o eu estou fazendo é o insert não no evento de criação da tabela, mas no clique de um botão. A tabela é criada no evento de criação do form.

Obrigado

Airton


Responder

Gostei + 0

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

Aceitar