DELPHI中使用UNIDAC连接ORACLE数据库
DELPHI中使用UNIDAC连接ORACLE数据库
最近在DELPHI中使用到UNIDAC连接到oracle数据库,这样可以不要安装oracle客户端,比较方便使用;所以简单学习了一下,主要是用到查询和执行存储过程,其中存储过程我测试了没有返回参数、有返回参数、有多高返回参数、有返回游标等存储过程,没有深入研究,以下就简单的查询和执行存储过程按步骤说一下:
1,执行查询语句:
a)新建一个ORACLECONNECTION。如图所示:

b)双击ORACLECONNECTION,出现下图,按图填写连接ORACLE的相关参数,点击CONNECT就可以连接了。

c)添加一个Tuniquery,编写SQL语句,点击EXECUTE按钮,点击DATA EDITOR...按钮可以获取记录;

d)新建一个TcLIENTDATASET,新建一个TdataSetProider,把新建的TClientDataSet的providernae属性设置为新建的Tdatasetprovider,把新建的tdatasetprovider的dataset属性设置为刚才建好的TUniqry就可以了;
e)使用代码如下: // IsLIPattern := FData.IsLIPattern;
with UniQryGetAT do//新建的TUNIQUERY
begin // 获取配置的AT500DID
Close;//关闭
SQL.Text :=//sql语句
'SELECT B.AT_ID, B.AT_IP, C.LINE_NAME, B.AT_POLLING, C.LINE_STAGE ' +
'FROM BD_PC_AT A, BD_AT_INFO B, BD_LINE C ' +
'WHERE UPPER(A.TGS_PC_NAME) = UPPER(''' +
Impack.Net.IPAddress.LocalHostName + ''') AND B.LINE_NO = C.LINE_NO ' +
' AND A.AT_ID = B.AT_ID ORDER BY B.AT_ID ';
OutputDebugString(PChar(SQL.Text));
Open;//打开 // GwCount := RecordCount;
// if GwCount = then Exit;
// 设置二维数组
SetLength(Ary_Gateway, , );
i := ;
j := ; // 写入IPINDEX文件
with TStringList.Create do
begin
while not Eof do
begin
Inc(i);
while i < FieldValues['AT_ID'] do
begin
Add(IntToStr(i) + ' 4660 0.0.0.0');
Inc(i);
end;
if j > then
SetLength(Ary_Gateway, j + , );
Add(IntToStr(i) + ' 4660 ' + FieldValues['AT_IP']);
Ary_Gateway[j, ] := IntToStr(i);
Ary_Gateway[j, ] := FieldValues['AT_ID'];
Ary_Gateway[j, ] := FieldValues['AT_IP'];
Ary_Gateway[j, ] := FieldValues['LINE_NAME'];
Ary_Gateway[j, ] := 'Kitting';
Ary_Gateway[j, ] := IntToStr(FieldValues['AT_Polling']);
Inc(j);
next;
end;
SaveToFile('ipindex');
Free;
end;
end;
后续会写一篇介绍使用存储过程。
DELPHI中使用UNIDAC连接ORACLE数据库的更多相关文章
- win7下VS.NET中通过LinqToSQL连接oracle数据库
.NetFramework3.5提供了LinqToSQL组件,为我们访问数据库提供了方便.我用的是VS+Oracle开发工具.也想体验一下快捷方便的感觉. 1.连接Oracle数据库 在连接Oracl ...
- Windows server2008 搭建ASP接口访问连接oracle数据库全过程记录--备用
真的是太不容易了,以前的时候在window server 2003上面搭建了一套asp+oracle的接口系统,就费了好大的劲儿,其实那会迷迷瞪瞪的也不知道怎么的就弄好了,也懒得管了.OK,从昨天到今 ...
- C# 连接Oracle数据库,免安装oracle客户端
一.方案1 首先下面的内容,有待我的进一步测试和证实.18.12.20 被证实了,还需要安装Oracle客户端,或者本机上安装oracle数据库软件. 18.12.20 1.下载Oracle.Mana ...
- java连接Oracle数据库的操作说明
在测试中,我们常常需要连接Oracle数据库来进行查询对比.下面,我们就来看看,如何使用java代码来连接数据库,并且取出我们想要的数值. 首先,java中如果要连接Oracle数据库,需要jdbc的 ...
- C# VS2010中,用微软自带的System.Data.OracleClient来连接Oracle数据库
由于微软在.Net框架4.0中已经决定撤销使用System.Data.OracleClient,造成在VS2010中无法连接Oracle数据库,但它还依旧存在于.Net架构中,我们可以通过自己引用 C ...
- java连接Oracle数据库实现增删改查并在Navicat中显示
创建TEST表 eclipse中的java项目 代码 数据库方法类 DBUtil: package util; import java.sql.Connection; import java.sql. ...
- Delphi - cxGrid连接Oracle数据库
cxGrid连接Oracle数据库 WinFrm窗体中需要添加OraSession .OraQuery和 OraDataSource控件. OraSession中配置数据库连接参数: OraQuery ...
- 在Visual Studio 2017中,.NET(C#)通过Oracle.ManagedDataAccess来连接Oracle数据库
C#如何通过Oracle.ManagedDataAccess来连接Oracle数据库 1.先创建一个项目,鼠标右击项目中的引用,再点击管理NuGet程序包(也可以先下载dll文件,再选添加引用),在搜 ...
- Delphi - cxGrid连接Oracle数据库 实现数据的增删改查
cxGrid连接Oracle数据库 实现数据的增删改查 cxGrid连接Oracle数据库 1:通过OraSession连接数据库.OraDataSet实现OraSession和OraDataSour ...
随机推荐
- SpringBoot2.0+ElasticSearch网盘搜索实现
1.ES是如何实现分布式高并发全文检索 2.简单介绍ES分片Shards分片技术 3.为什么ES主分片对应的备分片不在同一台节点存放 4.索引的主分片定义好后为什么不能做修改 5.ES如何实现高可用容 ...
- AtCoder Regular Contest 094
AtCoder Regular Contest 094 C - Same Integers 题意: 给定\(a,b,c\)三个数,可以进行两个操作:1.把一个数+2:2.把任意两个数+1.求最少需要几 ...
- 堆与堆排序、Top k 问题
堆排序与快速排序,归并排序一样都是时间复杂度为O(N*logN)的几种常见排序方法.学习堆排序前,先讲解下什么是数据结构中的二叉堆. 二叉堆的定义 二叉堆是完全二叉树或者是近似完全二叉树. 二叉堆满 ...
- Dib to Bitmap doesn't work in WPF
一.Dib to Bitmap doesn't work in WPF 代码如下: protected byte[] BitmapFromDIB(IntPtr pDIB, IntPtr pPix) { ...
- 【spark】持久化
Spark RDD 是惰性求值的. 如果简单地对RDD 调用行动操作,Spark 每次都会重算RDD 以及它的所有依赖.这在迭代算法中消耗格外大. 换句话来说就是 当DAG图遇到转化操作的时候是不求值 ...
- eclipse 远程调试tomcat6
一.tomcat6配置 1.修改tomcat\bin目录下的startup.bat如下,红色部分是新增的,修改后另存为jpda.bat set JPDA_ADDRESS=8114set JPDA_TR ...
- DTO数据传输对象
如果有多个对象需要传输到页面上需要用DTO传输
- react-hooks: custom hooks
memberEntitiy: export interface MemberEntity { id: number; name: string; code: string; } const useMe ...
- Python基础学习(第3天)
第6课 循环 1.for 元素 in 序列: statement Python的新函数range():新建一个数列,都是整数,从0开始,下一个元素比上一个元素大1,一直到数列的上限(不包括上限).PS ...
- Linux系统下的shutdown命令用于安全的关闭/重启计算机
Linux系统下的shutdown命令用于安全的关闭/重启计算机,它不仅可以方便的实现定时关机,还可以由用户决定关机时的相关参数.在执行shutdown命令时,系统会给每个终端(用户)发送一条屏显,提 ...