大家好,請幫忙一下小弟。
由於公司需要,小弟從VB.NET開發轉向Delphi修改之前的系統。但小弟在Delphi不熟悉,查了好多書籍都不知道
Twwdatasource,Twwquery,Twwdbgrid這三個控件的使用方法,屬性,而且網上也沒有這種書籍介紹。請各位大蝦門幫幫忙把這幾個控件的使用方法、屬性等詳細介紹一下。如有這方面的書籍,請發到E-Mail:[email protected]
謝謝了,請大家及時幫忙,小弟真的很急,還有幾天就要到交’作業‘了,小弟感激不盡。。
!!!!!!救命啊!!!!!!!!!!!!!!!!!!!救命!!!!!!!!!!!!!!!!!!!!!救命!!!!!!!!!!!!!!!!!!!!!救命!!!!!!!!!!!!!!!!!!!!!救命啊!!!!!!!!!!!!!!!

解决方案 »

  1.   

    TwwDbgrid-->TwwDataSource->TwwQuery--->TAdoConnection;
    TwwDbGrid用于显示数据;
    TwwDataSource用于绑定数据集;
    TwwQuery用于获取数据集;Query有一个Sql属性.在里面写入Sql语句.也可以指定Table名;
    tAdoConnection用于连接数据库;连接串在ConnectionString中;loginprompt:=False;(每次连接数据库前不输入用户名和密码);KeepConnection:=True;(保存数据库的连接)
    以上关系设定无误后,将TwwQuery组件设为活动状态;Action:=True;
    这时你就可以看到TwwDbGrid表格中显示出了你在TwwQuery.Sql中指定语句所取得的数据集了.
      

  2.   

    Twwdatasource 和 VB.net DataSource类似,绑定数据集(即数据控件和数据集之间的绑定)
    Twwquery 和 DataSet类似,获取数据集
    Twwdbgrid 和VB.net中DBGrid、DBGridView类似,显示数据集
    属性和VB.net相似控件也差不多,你看下就知道了,英文单词来的。
      

  3.   

    因為是維護之前的系統,我只看到系統裡只有TwwDbgrid--> TwwDataSource-> TwwQuery三個控件,但它的刪除、查詢、新增、修改功能都有。我是想問是否有這三個控件就可以實現數據操作功能了?如果是該如何設置及寫代碼?
    希望上面兩位大蝦能舉個例子來。謝謝了.............感激不盡.............
      

  4.   

    照版主的说法,应该还有一个控件:TwwDBNavigator
    这个控件具有刪除、查詢、新增、修改的功能
    查查看。如果有,那只要对这个控件TwwDBNavigator的事件进行相应的操作就可以实现你想要的
      

  5.   

    版主可以参照TDBNavigator的Delphi 7.0在线帮助手册。那里有一个事件OnClick
    并传递了一个参数Button: TNavigateBtn。
    这个参数Button的内容如下:
    TDBNavigator buttons 
    Button Purpose
    First Calls the dataset's First method to set the current record to the first record.
    Prior Calls the dataset's Prior method to set the current record to the previous record.
    Next Calls the dataset's Next method to set the current record to the next record.
    Last Calls the dataset's Last method to set the current record to the last record.
    Insert Calls the dataset's Insert method to insert a new record before the current record, 
            and set the dataset in Insert state.
    Delete Deletes the current record. If the ConfirmDelete property is True it prompts for 
            confirmation before deleting.
    Edit Puts the dataset in Edit state so that the current record can be modified.
    Post Writes changes in the current record to the database.
    Cancel Cancels edits to the current record, and returns the dataset to Browse state.
    Refresh Clears data control display buffers, then refreshes its buffers from the physical table 
            or query. Useful if the underlying data may have been changed by another application.
    希望能有所帮助。
      

  6.   


    我看了沒有TDBNavigator,它好像是把所有查詢數據功能的控件都放在一個FORM裡。
    如果是只有上面三個控件是否可不用寫代碼就可以查詢出數據來?謝謝!!!!!!
      

  7.   

    如果再增加一个控件(如TDBEdit)则可对由TwwQuery产生的数据集(DataSet)进行简单的过滤筛选(Filter)。
      

  8.   

    1、将TwwDBGrid的属性DataSource值设置为TwwDataSource;
    2、将TwwDataSource的属性DataSet值设置为TwwQuery;
    3、将TwwQuery的属性ConnectionString设置为相应的数据库连接字符串;
       将TwwQuery的属性SQL值填写相应的SQL查询语句;
       将TwwQuery的属性Active值设置为true;
    就OK了。
      

  9.   

    TwwQuery裡面沒有ConnectionString這個屬性呢,只有一個DatabaseName 和一個DataSet屬性
      

  10.   

    相關設置已根據你的處理,我的TwwQuery裡的SQL寫的是:select * from ab01 
    但運行時不會帶出數據來。
      

  11.   

    楼主的Delphi版本如果是7.0以上,完全可以考虑使用Delphi自带的TADOQuery控件。
    这个控件在操控上更加灵活、便捷。
      

  12.   

    可以了,謝謝
    但我還有一個問題:就是我有兩個表:ab01和ab02是主表和明細表的關係
    請問我怎麼用兩個twwdbgrid裡設置成主表和明細表的關係,當我點擊主表的一行數據時,明細表顯示相應的明細。謝謝。
      

  13.   

    我的DELPHI是7.0的,但是我對DELPHI不熟悉,現系統裡面用的控件都是Infopower3000的,數據庫都是用tww*類了。
      

  14.   

    如果是7.0,原有的控件应该还在。
    TADOQuery控件应该在ADO控件组中找到,TwwDataSource对应的TDataSource控件在Data Access控件组中找到,TwwDBGrid对应的TDBGrid控件可以在Data Controls控件组中找到。
      

  15.   

    本站有楼主需要的相应的解决方案。
    Search...
    Good luck.
      

  16.   

    主细结构应该这样设置;
    Qryitem.datasource :=QryMaster.Datasource;在QryItem.Sql这样写:
    select * from 明细表 Where 明细表.parentid:=主表的.idTww*的控件与TAdoQuery和TQuery使用上来说没有太多的区别;添加/删除/修改/ 你可能通过操作Sql语句来实现;首先建立一个临时之用的TAdoQuery控件,在这个控件中进行操作;
    如:
    Var
    SqlText: String;
    begin
    //更新;
    SqlText := Format('Update  表 set AName=%s where id=%d',[QuotedStr('sfgsdfg'),2]);
    //删除同理;
    //添加亦同理;
    With TAdoQuery do
    Begin
    Close;
    Sql.Clear;
    Sql.Add(SqlText);
    Execsql;
    end;
    再重新打开MasterQuery即可;
      

  17.   

    我是想用這三個控件TwwDbgrid--> TwwDataSource-> TwwQuery達到瀏覽功能,
    那應該怎麼設置呢?
      

  18.   

    Qryitem.datasource   :=QryMaster.Datasource在哪裡設置?在twwquery 的sql設置麼?
      

  19.   

    lqwxfdwj 你好像誤會了我的意思了,我的意思是要點擊Twwdbgrid裡的一行數據,明細的twwdbgrid裡面會顯示相應的明細數據。SQL我會寫。
      

  20.   

    1、TwwDbgrid--> TwwDataSource-> TwwQuery---> TAdoConnection; 
    2、TwwDbGrid用于显示数据; 
    3、TwwDataSource用于绑定数据集; 
    4、TwwQuery用于获取数据;
    5、Query有一个Sql属性.在里面写入Sql语句.也可以指定Table名; 
    6、TAdoConnection用于连接数据库;
       连接串在ConnectionString中;
       loginprompt:=False;
       KeepConnection:=True;(保存数据库的连接) 以上关系设定无误后,将TwwQuery组件设为活动状态;Action:=True; 
    这时你就可以看到TwwDbGrid表格中显示出了你在TwwQuery.Sql中指定语句所取得的数据了.
    和其他的Delphi的数据组件设置起来没有什么区别的!
      

  21.   

    33樓的功能已實現,但是我想在點擊主Twwdbgrid裡的一行數據,明細的twwdbgrid裡面會顯示相應的明細數據,該怎麼設置?
      

  22.   

    可以使用两组数据操控组件,
    增加一个TDBEdit控件,设置其Visible=false(不可见)、数据源DataSource=TwwDataSource1、字段名Field=id(这里的ID是TwwQuery1数据集中的ID,也就是ab01主表中的ID)。
    第一个TwwQuery的SQL查询语句为主表(Select * From ab01),
    第二个TwwQuery的SQL查询语句为从表(TwwQuery2.SQL.Add('Select * From ab02 Where id='+DBEdit1.Text));
    试试看。
    注意:一定要将两个TwwDBGrid的ReadOnly属性设置为true。否则,可能修改其中的数据,甚至关系。