那位高手,能详细的讲一下DELPHI的数据查询吗,最好有实例

解决方案 »

  1.   

    天啦,随便找本书和一个例子就可以看明白的
    很简单的
    例子Delphi自带的就不少
    关键还得自己动手,试试,
    要不就是给你现成的也还得靠你自己消化
      

  2.   

    一步,注册ODBC数据源。这是至关重要的一步,否则就无法实现对数据库的访问。例如,我们定义一个可访问SQL—Server服务器上zhb数据库的数据源ZHB。首先,选择SQLServer类型的数据库,进入“ODBCSQLServerSetup”窗口。然后,定义数据源名称为“ZHB”;定义Server为“SQL—Server”;以及网络路径为“ιιSQL—Server”;最后,按option命令按钮选择访问的数据库为zhb即可。    第二步,配置BDE。它是Delphi专用的数据库引擎。既可以从Delphi程序组里启动,也可以从Delphi程序项的Tools菜单下启动。Delphi在访问SQLServer数据库时略不同于VB。VB是直接调用ODBC来连接SQLServer的,而Delphi是首先调用BDE中的别名,别名再通过BDE中的ODBCDriver直接访问ODBC数据源实现的。而在BDE的ODBCDriver中你还可以定义其他ODBC属性,例如语言驱动程序或打开模式等等。这无疑大大增强了ODBC的功能。
        首先,在Drivers标记页中,按“NewODBCDriver”添加新的驱动程序。在添加窗口中有三栏需要填写。第一栏SQLLinkDriver可任取一名,如:ODBC—ZHB;第二栏DefaultODBCDriver中选择SQLServer;在第三栏defaultDataSourceName中选择刚才注册的数据源ZHB。按OK确认后就增加了一个名为ODBC—ZHB的DelphiODBC驱动程序。在其右侧的参数表中,还可以设置打开模式OPENMODE、查询模式SQLQRYMODE、SQL语句执行模式SQLPASSTHRUMODE以及语言驱动程序LANGDRIVER等。接下来,在Aliases标记页中,按“NewAlias”命令按钮增加一个新的别名。在增加新别名窗口中有两栏需要填写。第一栏为Newaliasname,可任取一个名字,如:zhbdb;这个别名就是我们要在Table控件中直接调用的数据库名字。第二栏Aliastype选择刚才在Drivers标记页中定义的ODBC—ZHB,最后按OK确认,就增加了一个名为zhbdb的别名。这样,Table控件可以通过别名zhbdb,别名zhbdb通过Delphi的ODBCDrivers(即:ODBC—ZHB),ODBC—ZHB再通过ODBC数据源ZHB就可连接到SQL—Server服务器上的zhb数据库了。以上相当于完成了在BDE中的注册,接下来就可以进行控件的属性设置了。    第三步,设置DataAccess控件属性以实现与数据库的连接。将Table和DataSource控件加到窗体中并修改Table控件的属性。首先,将DatabaseName属性改为刚才在BDE别名中定义的zhbdb。设置完databaseName属性后,就可以从TableName属性的下拉列表中选择一个表的名字。这其间Table控件要完成与数据库的连接,连接成功后,该列表中才会出现可选的表名。然后,将Active属性改为true,将打开的数据库激活,和DataSource控件建立联系。将Exclusive属性改为true。最后,将DataSource控件的DataSet属性设为Table1。DataSource控件为Table控件与DataControls控件相联系的渠道。通过以上步骤的设置,DataSource1对象就与zhb数据库的某个表建立了联系。以后,只要对DataSource1对象访问,就可以实现对该表的操作了。    第四步,设置DataControls控件属性以实现对数据库的操作。一旦DataAccess类的控件被成功打开,处于窗口中的DataControls标记页的控件就可以使用了。这些控件有DBGrid、DBNavigator、DBText、DBEdit、DBMemo、DBImage、DBListBox、DBComboBox、DBCheckBox以及DBRadioGroup。这些控件只要设定他们的DataSource和DataFields属性就可以实现对表的读写操作。
       可以看出,Delphi在设计数据库软件方面,尤其是SQLServer数据库方面要比VB来得快;而且,其丰富的控件为界面的设计提供了有利帮助;另外,Delphi的真编译使程序的执行效率相当高,可移植性好。这些,都是VB所欠缺的。
      

  3.   

    用ADO吧:
    1,在Form上放上一个ADOQuery组件
    2,设置ADOQuery的ConnectionString ,如: 'Provider=SQLOLEDB.1;Password=test;Persist Security Info=True;User ID=sa;Initial Catalog=datatest;Data Source=192.168.3.192'
    3,在事件里写三句代码
    ADOQuery1.close;
    ADOQuery1.SQL.Text := 'Select * from TableName';
    ADOQuery1.open;