ODP.NET的用法与微软的组件差别不大,但是还是有些不同的,主要集中在OracleCommand对象上。
1,参数前缀
ODP.NET使用":",微软的组件使用"@"。
2,BindByName
参数数组与SQL语句参数匹配规则:微软的组件中默认是用参数数组的名称,而ODP.NET中默认是用参数数组的索引。可能这么说太不明白,看下面的代码:
string text = "select count(*) from tbl_user where (name = :name and password = :password)
or (email = :email and password = :password)";
OracleCommand comm = new OracleCommand(text);
comm.Parameters.Add(new OracleParameter(":name", OracleDbType.Varchar2, 20));
comm.Parameters.Add(new OracleParameter(":password", OracleDbType.Varchar2, 64));
comm.Parameters.Add(new OracleParameter(":email", OracleDbType.Varchar2, 50));
按照上面写法应该是没有问题的,但事实并非如此,运行的时候会报错。应该这样写:
string text = "select count(*) from tbl_user where (name = :name and password = :password)
or (email = :email and password = :password)";
OracleCommand comm = new OracleCommand(text);
comm.BindByName = true;
comm.Parameters.Add(new OracleParameter(":name", OracleDbType.Varchar2, 20));
comm.Parameters.Add(new OracleParameter(":password", OracleDbType.Varchar2, 64));
comm.Parameters.Add(new OracleParameter(":email", OracleDbType.Varchar2, 50));
加了一句comm.BindByName = true。或者:
string text = "select count(*) from tbl_user where (name = :name and password = :password)
or (email = :email and password = :password)";
OracleCommand comm = new OracleCommand(text);
comm.Parameters.Add(new OracleParameter(":name", OracleDbType.Varchar2, 20));
comm.Parameters.Add(new OracleParameter(":password", OracleDbType.Varchar2, 64));
comm.Parameters.Add(new OracleParameter(":email", OracleDbType.Varchar2, 50));
comm.Parameters.Add(new OracleParameter(":password", OracleDbType.Varchar2, 64));
分享到:
相关推荐
### ODP.NET (Oracle Data Provider for .NET):关键技术知识点详解 #### 一、ODP.NET简介 **Oracle Data Provider for .NET (ODP.NET)** 是由Oracle公司开发的一个高性能的.NET数据提供程序,用于在.NET应用程序...
ODP.NET是Oracle公司专为.NET平台设计的数据库访问接口,用于提高Oracle数据库的访问效率和性能。相较于.NET Framework中的其他内置数据提供者(如System.Data.OracleClient、System.Data.Odbc和System.Data.OleDb)...
1. **安装ODP.NET**: 你可以通过下载Oracle Data Access Components (ODAC)获得ODP.NET,其中包括了必要的驱动程序和库。确保安装的是与你的.NET Framework版本相匹配的ODP.NET。 2. **配置连接字符串**: 连接...
10. **ODP.NET高级特性**:除了基本操作,ODP.NET还支持高级特性,如LOB对象处理、PL/SQL块执行、游标、触发器等,使得.NET应用程序能充分利用Oracle数据库的丰富功能。 以上就是.NET与Oracle数据访问的基础知识,...
它包含了一系列的COM对象,如Connection、Command、Recordset、Parameter等,这些对象为数据操作提供了丰富的功能。 在"VS环境下,利用ADO操作SQLSERVER数据库"这一描述中,我们看到的是实际的开发应用场景。Visual...
在C#中,使用Oracle Data Provider for .NET (ODP.NET) 可以方便地操作Oracle UDT。ODP.NET提供了对Oracle UDT的全面支持,包括创建、实例化、序列化和反序列化。 3. **定义Oracle UDT** 如文件名"截图_定义数据...
ODP.NET是Oracle公司提供的.NET Framework数据提供程序,它允许开发者直接与Oracle数据库进行交互。 通用数据库操作类的设计通常包含以下几个关键部分: 1. **连接管理**:类需要包含一个方法来管理数据库连接,如...
ODP.NET提供了ADO.NET兼容的接口,包括Connection、Command、DataReader、DataAdapter等对象,使得开发人员可以使用熟悉的ADO.NET编程模式来处理Oracle数据。 三、C#与Oracle连接 1. 添加引用:首先,确保项目中...
2. **Oracle 数据提供者 (ODP.NET)**: Oracle提供了专门针对.NET的Oracle Data Provider,即ODP.NET,它是用于连接C#和Oracle数据库的专用库。ODP.NET提供了比ADO.NET更高级的功能,如支持Oracle特有的数据类型和...
1. **Oracle数据提供者(Oracle Data Provider for .NET, ODP.NET)** ODP.NET是Oracle公司为.NET开发者提供的官方数据访问组件,支持.NET Framework和.NET Core。它提供了全面的Oracle数据库访问功能,包括连接...
- **功能**: 支持标准 ADO.NET 模型,包括 Command、Parameter、DataReader 和 DataSet 对象等。 - **优点**: - 高性能 - 简单易用 - 全面支持 Oracle 功能 #### 2. Oracle Managed Data Access (ODP.NET) - **...
首先,我们需要引入Oracle的数据提供者,即Oracle Managed Data Access (ODP.NET Managed Driver),这是一个专门为.NET Framework和.NET Core设计的Oracle数据库连接库。安装ODP.NET后,我们可以在C#项目中引用`...
Oracle提供了一个名为ODP.NET(Oracle Data Provider for .NET)的数据提供者,它是专门用于.NET应用程序访问Oracle数据库的。要建立连接,你需要以下信息:数据库服务器名、服务名、用户名和密码。以下是一个基本的...
在C#中连接Oracle数据库,我们需要引用Oracle提供的ODP.NET(Oracle Data Provider for .NET)库。首先,确保已安装Oracle Developer Tools for Visual Studio或单独的ODP.NET驱动。安装后,可以在项目中添加对`...
通过添加OracleParameter对象到CommandParameters集合中,你可以将变量值绑定到SQL语句中。 7. **存储过程** Oracle.ManagedDataAccess.dll还支持调用Oracle数据库中的存储过程。你可以通过设置CommandType为...
首先,确保已经安装了Oracle的数据提供程序,如Oracle Data Provider for .NET (ODP.NET)。这是与Oracle数据库进行交互的必要组件。你可以通过NuGet包管理器安装它,搜索“Oracle.ManagedDataAccess”并添加到项目中...
首先,我们需要引入Oracle的数据访问组件,即Oracle Data Provider for .NET (ODP.NET)。你可以通过NuGet包管理器安装`Oracle.ManagedDataAccess`库,它包含了连接Oracle数据库所需的类和方法。 1. **添加引用** ...
首先,我们需要安装Oracle的数据提供程序,通常使用Oracle Data Provider for .NET (ODP.NET)。安装完成后,可以通过NuGet包管理器在项目中引入`Oracle.ManagedDataAccess`库,它包含了与Oracle数据库交互所需的所有...
当需要与Oracle数据库进行交互时,可以借助Oracle提供的Oracle Managed Data Access (ODP.NET Managed Driver)库,该库使得C#程序员能够轻松地连接到Oracle数据库并执行查询、更新等操作。本实例将详细介绍如何使用...
首先,要实现C#与Oracle的连接,我们需要安装Oracle的数据提供者,也就是ODP.NET(Oracle Data Provider for .NET)。这可以通过NuGet包管理器来完成,搜索并安装“Oracle.ManagedDataAccess”库,它包含了处理...