C#不装Oracle客户端,连接数据库的方法
前几天临时碰到个项目需求,让从Oracle数据库中直接查询视图数据。
按照正常的模式,首先问清楚Oracle版本,然后安装Oracle客户端,更改“listener.ora”监听文件,安装PLSQL,连接、查询。
再在代码中引用“System.Data.OracleClient.dll”,配置连接字符串使用。
太麻烦了!
依稀记得之前有个方法可以不需要安装Oracle客户端,也不区分X86还是X64的方式,即使用Oracle官方提供的“Oracle.ManagedDataAccess.dll”,具体操作如下:
1、使用NuGet找到最新版的“Oracle.ManagedDataAccess”
2、代码中引用——using Oracle.ManagedDataAccess.Client;
3、连接数据库,执行查询语句
string sHISConn = "User Id=用户名;Password=密码;Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=数据库IP)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=数据库名)))";
string sExeSql = string.Format("SELECT * FROM 视图名称 WHERE TO_DATE(PAYTIME,'yyyy-mm-dd hh24:mi:ss') > TO_DATE('{0}','yyyy-mm-dd hh24:mi:ss')", dtExeDate.AddDays(1).ToString("yyyy-MM-dd"));
DataSet ds = new DataSet();
using (var conn = new OracleConnection(HISConn))
{
conn.Open();
OracleCommand cmd = new OracleCommand(sExeSql, conn);
OracleDataAdapter dap = new OracleDataAdapter(cmd);
dap.Fill(ds);
dap.Dispose();
conn.Close();
}
4、执行类语句用法类似,替换成相应的执行方法即可。
Done
分类:
Technology
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异