备忘录:关于.net程序连接Oracle数据库
2021-12-08 08:10
2376 查看
目录
志铭-2021年12月7日 21:22:15
我参考的教程:http://www.manongjc.com/article/11212.html
安装该教程中需要注意的是:
关于使用MSSM访问Oracle数据库
- 安装访问接口组件:OraOLEDB.Oracle 官网可以下载,但是需要注册
- 下载地址:https://pan.baidu.com/s/1OpYmpReEJcPg4wNESWy61Q 要求服务器至少安装. net2.0和. net3. 2916 5
-
我本机win10,SQLSERVER2019
在修改了环境变量后,不需要修改注册表的操作
创建链接服务器时,数据源参数IP/sid ,不需要使用端口
参考2: https://blog.csdn.net/weixin_42996498/article/details/88717706
关于. net 程序中连接Oracle数据库
-
使用Oracle.ManagedDataAccess.Client.dll
该程序集对.net无版本要求 - nuget:Install-Package Oracle.ManagedDataAccess -Version 19.13.0
- 注意我没有使用最新21.4.0版本,该最新版本依赖另外一个类库System.Text.Json (>= 5.0.2),而且对.net版本有要求
注意:注意不要使用System.Data.OracleClient,vs会提示过时
关于Oracle数据库连接字符串格式参考:
<connectionStrings> <add name="connStringForOracle" connectionString="user id=用户ID;password=密码;data source=(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=服务IP地址)(PORT=端口号))(CONNECT_DATA=(SERVER=服务名)(SERVICE_NAME=服务名)))" /> </connectionStrings>
简易的封装一个Oracle辅助类:
//添加命名空间:using Oracle.ManagedDataAccess.Client; public class OracleHelper { private static readonly string connectionString = System.Configuration.ConfigurationManager.ConnectionStrings["connStringForOracle"].ToString(); //创建连接对象 public static OracleConnection GetConn() { var conn = new OracleConnection(connectionString); conn.Open(); return conn; } //执行非查询语句返回受影响行数 public static int ExecuteNoQuery(string sql,CommandType type=CommandType.Text,params SqlParameter[] param) { using (var conn = GetConn()) { using (OracleCommand cmd=new OracleCommand (sql,conn)) { if (null!=param) { cmd.Parameters.AddRange(param); } cmd.CommandType = type; return cmd.ExecuteNonQuery(); } } } //返回查询结果的第一行第一个单元格的数据 public static object ExecuteScalar(string sql,CommandType type=CommandType.Text,params SqlParameter[] param) { using (var conn = GetConn()) { using (OracleCommand cmd=new OracleCommand(sql,conn)) { if (null!=param) { cmd.Parameters.AddRange(param); } cmd.CommandType = type; return cmd.ExecuteScalar(); } } } //返回查询结果集 public static DataSet GetDataSet(string sql, CommandType type = CommandType.Text, params SqlParameter[] param) { using (var conn = GetConn()) { using (OracleDataAdapter adapter = new OracleDataAdapter(sql, conn)) { if (null != param) { adapter.SelectCommand.Parameters.AddRange(param); } adapter.SelectCommand.CommandType = type; DataSet ds = new DataSet(); adapter.Fill(ds); return ds; } } } }
相关文章推荐
- 在 oracle 数据库上构建 .NET程序以及数据库连接事务说明
- .net程序无法连接oracle9.2.0.1数据库解决方法
- .net 程序远程连接 Oracle 数据库
- Oracle 10g数据库启动ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务;ora-01034:oracle not available
- 关于OleDB\Oracle\SQLClient连接数据库的性能测试
- 用NUnit为.NET程序做测试---数据库测试之连接测试
- .net 连接ORACLE 数据库字符串
- 关于node连接oracle显示ORA-12541: TNS: 无监听程序
- .net开发连接Oracle数据库注意问题
- C#连接Access、SQL Server、Oracle、MySQL、DB2和SyBase六种不同数据库的程序源码
- 关于.NET 访问Oracle数据库
- 关于oracle设置不活动自动断开连接导致java访问数据库时发生异常的问题
- oracle 数据库 错误 ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务 解决办法
- 用oralce连接.net客户端出现问题:“数据连接不成功,请检查该数据库是否已启动尝试加载oracle客户端时引发BadImageFormatException.如果在安装32位Oracle客户端组
- 关于C#连接Oracle数据库
- 用oralce连接.net客户端出现问题:“数据连接不成功,请检查该数据库是否已启动尝试加载oracle客户端时引发BadImageFormatException.如果在安装32位Oracle客户端组件的情况下以64位模式运行,”的解决办法
- 关于Windows 7 64位下Visual Studio 2010 开发的Asp.net程序连接Oracle 的出现的问题
- Jfinal 连接oracle数据关于数据库大小的问题
- 解决oracle关于OEM 中“Enterprise Manager 无法连接到数据库实例”的问题
- C#连接Access、SQL Server、Oracle、MySQL、DB2和SyBase六种不同数据库的程序源码