谁给个简单点的例程 或者解释啊???

解决方案 »

  1.   

    ADOQuery、DataSource、DBGrid、DBNavigator四个组件即可实现你的要求~~
    按下面的文章一步一步做~~
    http://book.csdn.net/bookfiles/118/1001183695.shtml
      

  2.   

    数据集ADOQuery
    增加:ADOQuery.Append或ADOQuery.Insert
    删除:ADOQuery.Delete
    修改:
    ADOQuery.EDit;
    ADOQuery.FieldByName('name').AsString := 'xxx';
    ADOQuery.Post;
    查找:
    ADOQuery.Close;
    ADOQuery.Sql.Text := 'select * from 表';
    ADOQuery.Open;
      

  3.   

    procedure TForm1.Button1Click(Sender: TObject);   //添加
    var i:integer;
    begin
        with dm.DipQuery1 do begin
        SQL.Add('insert into 日报表(日期,线别,班别,厂商,机种,工单,批量,计划产量,实际产量,产量差异,差异原因,应作工时,实作工时,生产总数,不良项目,不良板数,板数DPPM,不良率,备注)');
        SQL.Add('values('''+edit1.text+''','''+combobox1.Text+''','''+combobox2.Text+''','''+edit2.text+''','''+edit3.text+''','''+edit4.text+''','''+edit5.text+''','''+edit6.text+''','''+edit7.text+''','''+edit8.text+''','''+edit9.text+''','''+edit10.text+''','''+edit11.text+''','''+edit12.Text+''','''+combobox3.text+''','''+edit13.text+''','''+edit15.text+''','''+edit14.Text+''','''+edit18.Text+''')');
        execsql;
        close;
        sql.Clear;
        sql.add('select * from 日报表 where 日期='''+edit1.Text+''' and 工单='''+edit4.text+''' and 班别='''+combobox2.text+''' and 线别='''+combobox1.text+''' and 不良项目='''+combobox3.text+''' and 不良板数='''+edit13.text+'''');
        open;
        end;
    end;procedure TForm1.Button2Click(Sender: TObject);   //修改
    begin
    with dm.DipQuery1 do begin
        edit;
        fieldbyname('日期').asstring:=edit1.Text;
        fieldbyname('线别').asstring:=combobox1.Text;
        fieldbyname('班别').asstring:=combobox2.Text;
        fieldbyname('厂商').AsString:=edit2.Text;
        fieldbyname('机种').asstring:=edit3.text;
        fieldbyname('工单').asstring:=edit4.text;
        fieldbyname('批量').asstring:=edit5.text;
        fieldbyname('计划产量').asstring:=edit6.text;
        fieldbyname('实际产量').asstring:=edit7.text;
        fieldbyname('产量差异').asstring:=edit8.Text;
        fieldbyname('差异原因').asstring:=edit9.text;
        fieldbyname('应作工时').asstring:=edit10.text;
        fieldbyname('实作工时').asstring:=edit11.text;
        fieldbyname('生产总数').asstring:=edit12.text;
        fieldbyname('不良项目').asstring:=combobox3.Text;
        fieldbyname('不良板数').asstring:=edit13.text;
        fieldbyname('板数DPPM').asstring:=edit15.text;
        fieldbyname('不良率').asstring:=edit14.Text;
        post;
        close;
        sql.Clear;
        sql.add('select * from 日报表 where 日期='''+edit1.Text+''' and 工单='''+edit4.text+''' and 班别='''+combobox2.text+''' and 线别='''+combobox1.text+''' and 不良项目='''+combobox3.text+''' and 不良板数='''+edit13.text+'''');
        open;
    end;
    procedure TForm1.Button3Click(Sender: TObject);   //删除
    begin
    with dm.DipQuery1 do begin
      close;
      sql.Clear;
      sql.Add('select * from 日报表');
      open;
      if Eof then begin
              Close;
              ShowMessage('记录为空!');
              exit;
              end
              else
    if messagedlg('记录将被删除!确认吗?',mtconfirmation,[mbYes,mbNo],0)=mrYes then
    begin
    with dm.DipQuery1 do begin
        close;
        sql.Clear;
        sql.add('delete from 日报表 where 日期='''+edit1.Text+''' and 工单='''+edit4.text+''' and 班别='''+combobox2.text+''' and 线别='''+combobox1.text+''' and 不良项目='''+combobox3.text+''' and 不良板数='''+edit13.text+'''');
        execsql;
        close;
        sql.Clear;
        sql.Add('select * from 日报表 order by 日期,线别,班别 asc');
        open;
        end;
        end;
    end;procedure TForm1.Button12Click(Sender: TObject);   //查找
    begin
    if combobox5.ItemIndex=0 then
    with dm.DipQuery1 do begin
          Close;
          SQL.Clear;
          SQL.Add('select * from  日报表  where 工单 like '''+'%'+edit17.Text+'%'+'''');
          Open;
          If Eof then begin
              Close;
              ShowMessage('工单记录不存在');
              exit;
              end
              else
    close;
    sql.Clear;
    sql.add('select * from 日报表 where 工单 like '''+'%'+edit17.Text+'%'+''' order by 日期,线别,班别 asc');
    open;
    end
    else
    with dm.DipQuery1 do begin
    Close;
          SQL.Clear;
          SQL.Add('select * from  日报表  where 日期='''+datetostr(DateTimePicker5.date)+'''');
          Open;
          If Eof then begin
              Close;
              ShowMessage('日期记录不存在');
              exit;
              end;
    close;
    sql.clear;
    sql.add('select * from 日报表 where 日期='''+datetostr(DateTimePicker5.date)+''' order by 工单,线别,班别 asc');
    open;
    end;