.Net连接Oracle数据库的实现代码

本文介绍如何使用System.Data.OracleClient进行Oracle数据库访问,包括安装客户端、配置连接字符串、查询分析器使用及.NET代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文使用System.Data.OracleClient方式,这是MS提供的以ADO.NET方式访问Oracel的驱动;Oracle也有个Oracle Data Provider for .NET(ODP.NET)下篇再讨论。

访问Oracle时客户端(或者web服务器)得安装一个Oracle的客户端,这个有点不爽,SQL Server不用呀,MySQL顶多来个MySql.Data.dll 就搞定。寻觅了很久找到一个相对苗条的客户端,才12M多、小巧实用呀。安装后如下:

一个类似查询分析器的连接与查询工具,一个配置文件(很重要)。

启动连接工具

输入帐号信息,对应的是连接字符串的user id,password,datasource


连接成功后就可以查询了,这玩意看起来想windows程序,貌似像是一个dos命令行工具,输入完sql得选择"文件/运行" 执行SQL

配置文件(使用前应该先配置此文件),因为是精简版,没有图形化工具配置,所有就Notepad了

#DATABASENAME  =
#  (DESCRIPTION  =
#    (ADDRESS_LIST  =
#      (ADDRESS  = (PROTOCOL  = TCP)(HOST  =  127.0. 0.1)(PORT  =  1521))
#    )
#    (CONNECT_DATA  =
#      (SERVICE_NAME  = servicename)
#    )
#  )

 

更改这个注释过的例子配置

 

myOracle  =
  (DESCRIPTION  =
    (ADDRESS_LIST  =
      (ADDRESS  = (PROTOCOL  = TCP)(HOST  =  33.33. 33.33)(PORT  =  1521))
    )
    (CONNECT_DATA  =
      (SERVICE_NAME  = mysid)
    )
  )

 

其中,myOracle是随便起的名子,连接字符串的data source=这里的myOracle;HOST,PORT不用说了;SERVICE_NAME = mysid 填服务端数据库实例的SID,这里应该是确定了那个数据库了。

配置完成后就可以在程序中访问Oracle,以下举例获取一个表的数据显示在页面

using System.Data.OracleClient;

OracleConnection con =  new OracleConnection( " Data Source=myOracle;user id=xxx;password=xxx; ");
        OracleCommand cmd =  new OracleCommand( " select * from table ", con);
        con.Open();
        OracleDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
        GridView1.DataSource = dr;
        GridView1.DataBind();
        dr.Close();

 

-- 显示所有表信息,类似mysql的show tables
select  *  from all_tables

-- 显示前几条,类似sqlserver的select top
select  *  from tb  WHERE ROWNUM  <= 5

-- from表名应该为OWNER.TABLE_NAME
select  *  from ms.mytable 

-- 参数符号不同,oracle中为: sqlserver中为@ mysql中为?
select  *  from tab  where id =:myid
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值