• Delphi连接Oracle控件ODAC的安装及使用(轉載)


     Delphi连接Oracle控件ODAC的安装及使用

    2010-08-13 01:13:37

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://gang4415.blog.51cto.com/225775/373087

    Delphi连接Oracle有很多种方式,但大多要在客户机上安装Oracle那庞大的客户端,比较不方便,使用ODAC控件连接Oracle则免去了这些麻烦。ODAC也是Oracle公司载发的控件。有for Delphi 6--Dephi 2007的版本。

    Oracle数据访问组件(ODAC),全称:Oracle Data Access Components,Oracle数据存取组件(ODAC)库为Borland Delphi, C++ Builder以及Kylix提供了一些非可视化的组件,它们用来存取Oracle关系数据库系统,ODAC直接使用Oracle调用接口(OCI)。OCI是一种允许应用程序开发人员使用第三方开发语言存取Oracle数据服务器的过程或函数有及控制所有的SQL语句执行状态的应用程序接口(API)。OCI通过一个动态运行库(ORA*.DLL)提供了一个标准的数据库存取库及函数,以在应用程序中建立连接。也可以使用ODAC的Net选项而无需在客户机上安装Oracle客户端来连接到Oracle。在这种情况下,ODAC公需要TCP/IP协议的支持,从而可以创建真正的、最小的数据库应用程序。

    下面是安装步骤(通过修改对应版本下的make.bat文件编译也可以达到如下效果):

    安装环境:ODAC 6.80.0.47 for Delphi 7

    编译及安装:在Project Manager对应的bpl上单击右键先Compile再Install

    1、打开并编译安装SourceDelphi7dac70.dpk

    2、打开并编译安装SourceDelphi7dacvcl70.dpk

    3、打开并编译安装SourceDelphi7dcldac70.dpk
    4、打开并编译安装SourceDelphi7odac70.dpk
    5、打开并编译安装SourceDelphi7odacvcl70.dpk
    6、打开并编译安装SourceDelphi7dclodac70.dpk
    7、打开并编译安装SourceDelphi7oraprov70.dpk

    8、将C:Program FilesBorlandBDS4.0ODACSource和C:Program FilesBorlandBDS4.0ODACSourceDelphi10添加到"Search Path"中("C:Program FilesBorlandBDS4.0ODAC"是我放置ODAC的路径,你要换成你自已的路径,如果你不放置"C:Program FilesBorlandBDS4.0ODACSource"则会出现"File not found: 'DBAccess.res'"的错误).

    组件介绍:

    TOraSession

    设定与控制与Oracle数据库的连接。

    当User、Password、Server属性设置好以后,你可以通过调用Connect方法或者设定Connected属性为True来建立一个与数据库的连接。

    ODAC包含了以下组件:

    所有要有数据访问的组件,像TOraQuery、TOraSQL、TOraScript,必须有他们的被赋予一个TOraSession实例的Session属性。

    ODAC有两种连接Oracle的方式:在 Client 模式下,使用Oracle Client 软件, 或者在 Direct 模式下,通过 TCP/IP连接,这种方式发布程序的时候不需要客户端安装Oracle Client 软件

    推荐使用Direct模式

    方法:在OraSession的Option中选择Direct,连接的服务器写为“IP:端口:全局服务器名”,例如:

    OraSession1.Options.Direct:=True
    OraSession1.Username:='system';
    OraSession1.Password:='888';
    OraSession1.Server:='192.168.10.23:1521:MyDataBase';
    OraSession1.Connected;


    TOraQuery

    利用DML SQL语句更新数据库的表。将SQL语句放入SQLInsert,SQLDelete和SQLUpdate属性。
    SQLInsert,SQLDelete,SQLUpdate,SQLLock,SQLRefresh属性支持自动绑定参数。要获得操作之前的字段值可以在字段名前加“OLD_”前缀。
    如果没有设定SQLInsert,SQLDelete,SQLUpdate属性TOraQuery,TOraQuery会执行只读访问。

    TSmartQuery
    TSmartQuery是TOraQuery的另一种选择。它通过动态生成SQL语句,提供对记录insert,delete和update的操作。你也可以履行记录的自动阻塞(blocking),他们的修改前检查、提交后刷新。
    为了修改TSmartQuery的记录集,在SQL属性中的SELECT语句应该获得更新表的RowID。当KeyFields属性被指定时,TSmartQuery也可被修改。TSmartQuery只能修改一个Oracle的表。所修改的表是UpdatingTable属性中的表或者是在From子句中的第一个表。

    为了编辑Dept表中的数据,你可以在SQL属性中写:
    SELECT D.*,D.ROWID FROM Scott.Dept D

    ODAC包含了以下组件:

    TOraSession:控制服务连接;

    TOraQuery:执行查询,操作记录集,灵活地更新数据库表;

    TSmartQuery:与TOraQuery功能类似,可自动创建Insert、Delete、Update查询,自动锁定及更新记录;

    TOraSQL:执行SQL语句,PL/SQL块,存储过程;

    TOraPackage:允许执行包中的过程及函数以及变量;

    TOraTable:允许不需要使用SQL语句来读取及更新单个表;

    TOraStoredProc:执行存储过程和函数,允许编辑游标并可作为参数返回;

    TOraNestedTable:控制嵌套表数据;

    TOraProvider:提供从客户数据集进行数据及应用更新;

    TOraScript:执行SQL及PL/SQL语句;

    TOraAlerter:允许在两个会话中传送消息;

    TOraLoader:快速装载Oracle数据库;

    TOraSQLMonitor:允许监视执行基于ODAC应用程序中的动态SQL语句;

    TOraErrorHandler:传送错误信息;

    TBDESession:允许将ODAC集成到基于BDE的应用程序中;

    TConnectDialog:用来输入用户名,口令及服务名;

    TCRDBGrid:增强的TDBGrid,提供可视化的数据过滤及增量查询;

    TVirtualTable:数据存储在内存中。

  • 相关阅读:
    第一篇 C#模拟http请求抓取数据
    asp.net webService添加头文件验证
    好文记录地址
    关于邮件发送和邮件附件接收方面
    sql 查询时间当前时间少7天
    20190729研究和学习篇
    maven 打包 时出现非法字符: /65279错误
    .netcore开发教程系列之(四)创建web应用程序-razor页面模式
    .netcore开发教程系列之(四)创建web应用程序-Blazor模式
    .netcore开发教程系列之(三)创建web应用程序-Mvc模式
  • 原文地址:https://www.cnblogs.com/BillLei/p/4692170.html
Copyright © 2020-2023  润新知