在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
delphi数据库技术续 TQuery组件 ADO技术 1.1 TQuery组件与TTable组件的比较 TQuery组件和TTable组件同属于数据集组件,它们在很多地方是相似的,但二者又有区别。主要表现在以 下几个方面: TQuery组件主要功能是用来支持SQL语言访问本地或远程数据库。 TQuery组件允许用户同时访问多个表,而TTable组件一次只能访问一个表格。 TQuery 组件访问的是表格中的特定数据内容;而TTable组件只有在提供过滤或限定检索范围时才能访问表格中的特定数据内容,否则,TTable组件访问的将是表格中的全部数据。 1.2 动态执行SQL语句 为了在程序中动态设置SQL并执行查询,可在窗体中设置一个按钮,并在该按钮的事件处理程序中对Query对象设置相应的SQL语句。 1.3 通过组装SQL语句实现查询 用户一般对数据库的设置及SQL语句不太熟悉,通常情况是让用户提供必要的信息,在程序中按用户提供的信息装配成SQL语句。 1.4 通过设置SQL参数实现查询 灵活设置SQL语句的另一种办法是在SQL语句中引入参数,即设置带参数的SQL语句,由用户设置该参数所对应的值,程序中将用户设定的值传送到参数中,并执行该SQL语句,从而实现动态查询。设置带参数的SQL语句时,必须在参数前加上“:”,“:”后紧跟参数。 1.5 执行查询 要在设计期执行查询,只要把Active属性设为True即可。不过,在设计期能执行的SQL语句仅限于Select语句,不能是Insert、Update或Delete语句。要在运行期执行查询,可以调用Open或ExecSQL函数。Open适合于执行Select语句,而ExecSQL适合于执行Insert、Update或Delete语句,不返回结果。在调用Open或ExecSQL之前,应首先调用Close方法关闭数据集。 ADO技术 设置ODBC数据源 ADO常用组件 2.1 设置ODBC数据源 ODBC是一种采用开放式结构进行数据库连接的接口标准,是一种开放的独立于厂商的API应用程序接口,可以跨平台访问个人计算机、小型计算机及主机系统。 创建ODBC数据源 打开ODBC数据源窗口 2.2 ADO常用组件 1. TADOConnection组件 TADOConnection组件用来建立与ADO数据库之间的联系,各种ADO数据集及操作组件可以共用这种联系来执行命令,读取数据,并执行相应的操作。TADOConnection组件允许通过改变其属性值来控制与数据库之间联系的属性和情况。 (1)TADOConnection组件的重要属性 ConnectionString属性 Connected属性 LoginPrompt属性 ConnectionTimeout属性 (2)TADOConnection组件的重要方法 Cancel方法 Open方法 2. TADODataSet组件 TADODataSet组件可以直接与一个表进行连接,也可以执行SQL语句,还可以执行存储过程,可以说它集TADOTable、TADOQuery、TADOStoredProc三者的功能于一身。使用时首先设定TADODataSet的Connection属性为TADOConnection组件。如果没有TADOConnection组件,就直接设定ConnectionString属性。 (1)TADODataSet组件的重要属性 ConnectionString属性 CommandType属性和CommandText属性 Connection属性 (2)TADO DataSet组件的方法 TADO DataSet组件的方法大多从TDataSet处继承而来,如用来移动数据指针的First、Next、Last和Prior方法,及用来编辑数据记录的Insert和Edit方法等。 3. TADOTable组件 TADOTable组件与BDE中的Table组件非常类似,许多属性、事件和方法也一样。如果使用了TADOConnection 组件,那么TADOTable 组件的Connection属性可直接设置为指向TADOConnection组件,否则TADOTable组件的ConnectionString属性就需要详细设置。 4. TADOQuery组件 TADOQuery 组件的ConnectionString 属性和Connection属性的设置与上面的TADOTable组件相同。TADOQuery组件的功能和作用与BDE中的TQuery组件类似。但有一点不同,即在程序中为参数赋值时,TQuery组件的赋值语句为:ParamByName('FieldName').Value:=s1;而TADOQuery组件的赋值语句为:Parameters.ParamByName('FieldName').Value:=s1; |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论