Update usando Query

14/02/2003

0

Tudo que eu preciso é atualizar a tabela DADOS, usando um componente TQuery

nesta instrução eu quero setar o valor de EdEntrada.text no campo Entrada, onde o codigo seja igual ao valor do objeto EdCodigo.text

update Dados set
Entrada=´ ´+EdEntrada.text+´ ´
where codigo=´ ´ +EdCodigo.text+´ ´

isso tá em retornando o erro:
´ error creating cursor handle´

vc sabe me explicar qual o problema?


Dsbingo

Dsbingo

Responder

Posts

14/02/2003

Jabanildo

esta é a unit de um projeto, de aprendizagem

aqui tem uns esquemas de Update....

Da uma olhada




unit Unit17;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Grids, DBGrids, DB, DBTables, Mask, DBCtrls;

type
TFiado = class(TForm)
Query1: TQuery;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
Button1: TButton;
Label1: TLabel;
Label2: TLabel;
CheckBox1: TCheckBox;
Query2: TQuery;
DataSource2: TDataSource;
Label3: TLabel;
Label4: TLabel;
Query2Controle: TAutoIncField;
Query2Operaaonum: TStringField;
Query2Entrada: TFloatField;
Label5: TLabel;
DBEdit1: TDBEdit;
Label6: TLabel;
DBEdit2: TDBEdit;
Label7: TLabel;
DBEdit3: TDBEdit;
CheckBox2: TCheckBox;
Edit1: TEdit;

procedure DBGrid1CellClick(Column: TColumn);
procedure Button1Click(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure CheckBox2Click(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Fiado: TFiado;

implementation

{$R *.dfm}

procedure TFiado.DBGrid1CellClick(Column: TColumn);
begin
Label1.Caption := Query1.FieldByName(´fiadonº´).AsString;
Label2.Caption := Query1.FieldByName(´valor´).AsString;
Label4.Caption := Query1.FieldByName(´nomecliente´).AsString;


end;

procedure TFiado.Button1Click(Sender: TObject);
var
deve,deu,resta:Real;
begin
If CheckBox1.Checked = True Then
Begin
If (MessageDlg(´Vc Confirma´,mtWarning,mbOKCancel,0)= mrOk) Then
Begin
Query2.SQL.Clear;
Query2.SQL.Add(´Select * from Caixa´+Label3.Caption);
Query2.Active := True;
Query2.Append;
DBEdit2.Text := (´pagamento de divida nº´+Label1.Caption+´ do cliente ´+ Label4.Caption);
DBEdit3.Text := (Label2.Caption);
Query2.Post;
Query1.SQL.Clear;
Query1.SQL.Add(´Delete from fiado´);
Query1.SQL.Add(´Where fiadonº = ´+Label1.Caption+´;´);
Query1.ExecSQL;
Query1.SQL.Clear;
Query1.SQL.Add(´Select * from fiado´);
Query1.Close;
Query1.Open;
end;
End;
If CheckBox2.Checked = True Then
Begin
deve := StrToFloat(Label2.Caption);
deu := StrToFloat(Edit1.Text);
resta := (deve-deu);
Query2.SQL.Clear;
Query2.SQL.Add(´Select * from Caixa´+Label3.Caption);
Query2.Active := True;
Query2.Append;
DBEdit2.Text := (´pagamento de divida nº´+Label1.Caption+´ do cliente ´+ Label4.Caption);
DBEdit3.Text := FloatToStr(deu);
Query2.Post;
Query1.SQL.Clear;
Query1.SQL.Add(´Update Fiado set valor = ´+FloatToStr(resta));
Query1.SQL.Add(´Where fiadonº = ´+Label1.Caption+´;´);
Query1.ExecSQL;
Query1.SQL.Clear;
Query1.SQL.Add(´Select * from fiado´);
Query1.Close;
Query1.Open;
end;
end;

procedure TFiado.FormActivate(Sender: TObject);
begin
Query1.Active := True;
end;

procedure TFiado.CheckBox2Click(Sender: TObject);
begin
CheckBox1.Checked := False;
Edit1.Enabled := true;
end;

procedure TFiado.CheckBox1Click(Sender: TObject);
begin
CheckBox2.Checked := false;
Edit1.Enabled := false;
end;

end.


Responder

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

Aceitar