c# 连接oracle 及对应获取数据集
1、数据库配置xml,首先连接成功后会自动创建xml并保存到对应xml,如下
static string ConnPath = AppDomain.CurrentDomain.BaseDirectory + "ConnOrcle.xml";
声明xml名称,便于后续写入对应数据库参数
2、创建xml
/// <summary>
/// 创建XML节点
/// </summary>
/// <param name="ip"></param>
/// <param name="port"></param>
/// <param name="sid"></param>
/// <param name="user"></param>
/// <param name="pwd"></param>
public static void CreateXMLInform(string ip, string port, string sid, string user, string pwd)
{
XmlDocument xmlDoc = new XmlDocument();
XmlDeclaration xmlDecl = xmlDoc.CreateXmlDeclaration("1.0", "utf-8", null);
xmlDoc.AppendChild(xmlDecl);
XmlElement xe = xmlDoc.CreateElement("Conn");//创建一个Conn节点
XmlElement xc1 = xmlDoc.CreateElement("ConnIP");//IP
xc1.InnerText = ip;
xe.AppendChild(xc1);
XmlElement xc2 = xmlDoc.CreateElement("ConnPort");//端口
xc2.InnerText = port;
xe.AppendChild(xc2);
XmlElement xc3 = xmlDoc.CreateElement("ConnSid");//服务器名称
xc3.InnerText = sid;
xe.AppendChild(xc3);
XmlElement xc4 = xmlDoc.CreateElement("ConnUser");//用户名
xc4.InnerText = user;
xe.AppendChild(xc4);
XmlElement xc5 = xmlDoc.CreateElement("ConnPwd");//密码
xc5.InnerText = pwd;
xe.AppendChild(xc5);
xmlDoc.AppendChild(xe);
xmlDoc.Save(ConnPath);
}
3、声明连接类实体 ConnEntity
private string connIP;//ip地址
private string connPort;//端口
private string connSid;//服务器名称
private string connUser;//用户名
private string connPwd;//密码
4、读取xml内容并赋值给ConnEntity
/// <summary>
/// 读取XML内容赋值给连接
/// </summary>
/// <returns></returns>
public static ConnEntityReadXML()
{
ConnEntity connentiy= new ConnEntity();
if (File.Exists(ConnPath))
{
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(ConnPath);
XmlNodeList list = xmlDoc.SelectSingleNode("Conn").ChildNodes;
connentiy.ConnIP = list[0].InnerText;
connentiy.ConnPort = list[1].InnerText;
connentiy.ConnSid = list[2].InnerText;
connentiy.ConnUser = list[3].InnerText;
connentiy.ConnPwd = list[4].InnerText;
}
return connentiy;
}
5、连接数据库测试
/// <summary>
/// 连接数据库
/// </summary>
/// <param name="ip">地址</param>
/// <param name="port">端口</param>
/// <param name="sid">服务名称</param>
/// <param name="user">用户</param>
/// <param name="pwd">密码</param>
public static bool ConnectionTestDB(string ip, string port, string sid, string user, string pwd)
{
ConnOracle(ip, port, sid, user, pwd);
try
{
//不为空 并且 是关闭或者断了的情况下,才连接
if (Connection != null && (Connection.State == System.Data.ConnectionState.Closed || Connection.State == System.Data.ConnectionState.Broken))
{
Connection.Open();
ReturnOwner = Select("SELECT OWNER, TABLE_NAME FROM ALL_TAB_COMMENTS ORDER BY OWNER, TABLE_NAME");
}
MessageBox.Show("连接成功!");
return true;
}
catch (Exception ex)
{
MessageBox.Show(+“连接失败,请检查数据库配置参数”ex.Message.ToString());
return false;
}
}
6、其中调用的函数
/// </summary>
/// <param name="ip">地址</param>
/// <param name="port">端口</param>
/// <param name="sid">服务名称</param>
/// <param name="user">用户</param>
/// <param name="pwd">密码</param>
/// <returns>OleDbConnection</returns>
private static OracleConnection ConnOracle(string ip, string port, string sid, string user, string pwd)
{
string connStr;
connStr = "Data Source=(DESCRIPTION = (ADDRESS_LIST= (ADDRESS = (PROTOCOL = TCP)(HOST = " + ip + ")(PORT = " + port + "))) (CONNECT_DATA = (SERVICE_NAME = " + sid + ")));User ID=" + user + ";Password=" + pwd + ";";
Connection = new OracleConnection(connStr);
return Connection;
}
详细看源码网址及下载
c#oracle创建实体类操作资源-CSDN文库
相关文章:
c# 连接oracle 及对应获取数据集
1、数据库配置xml,首先连接成功后会自动创建xml并保存到对应xml,如下 static string ConnPath AppDomain.CurrentDomain.BaseDirectory "ConnOrcle.xml"; 声明xml名称,便于后续写入对应数据库参数 2、创建xml /// <summar…...
JS直接量及其相关对象
什么是直接量 直接量是指不需要创建对象就可以直接使用的变量。ES中的直接量主要有三种类型:表示字符串的string类型、表示数字的number类型和表示true/false的boolean类型。当我们直接将值赋给变量后,ES就会自动判断其类型,而且当参数发生变…...
一 windso10 笔记本刷linux cent os7.9系统
1:准备材料 16G以上U盘, 笔记本一台 镜像选了阿里云镜像:centos-7-isos-x86_64安装包下载_开源镜像站-阿里云 软件:链接:https://pan.baidu.com/s/13WDp2bBU1Pdx4gRDfmBetg 提取码:09s3 2:把镜像写入U盘,本人已经写入好了,选择镜像,点开始就是,确定等…...
118.龙芯2k1000-pmon(17)-制作ramdisk
目前手上这个设备装系统不容易,总是需要借助虚拟机才能实现。 对生产就不太那么友好,能否不用虚拟机就能装Linux系统呢? 主要是文件系统的问题需要解决,平时我们一般是用nfs挂载后,然后对硬盘格式化,之后…...
IP-guard邮件管控再升级,记录屏幕画面,智能阻断泄密邮件
邮件是工作沟通以及文件传输的重要工具,却也成为了信息泄露的常见渠道。员工通过邮件对外发送了什么内容,是否含有敏感信息都无从得知,机密通过邮件渠道外泄也难以制止。想要防止企业的重要信息通过邮件方式泄露,我们不仅需要通过技术措施对外发邮件的行为进行规范,也要对…...
#LLM入门|Prompt#2.10_评估、自动化测试效果(下)——当不存在一个简单的正确答案时 Evaluation Part2
上一章我们探索了如何评估 LLM 模型在 有明确正确答案 的情况下的性能,并且我们学会了编写一个函数来验证 LLM 是否正确地进行了分类列出产品。 在使用LLM生成文本的场景下,评估其回答准确率可以是一个挑战。由于LLM是基于大规模的训练数据进行训练的&am…...
round四舍五入在python2与python3版本间区别
round()方法返回数值的小数点四舍五入到n个数字。 语法 以下是round()方法的语法: round( x ,n) 参数 x --这是一个数值,表示需要格式化的数值 n --这也是一个数值,表示小数点后保留多少位 返回值 该方法返回 数值x 的小数点四舍五入到n个数字 …...
新概念英语第二册(73)
【New words and expressions】生词和短语(9) record-holder 纪录保持者 truant n. 逃学的孩子unimaginative adj. 缺乏想像力的shame n. 惭愧,羞耻 hitchhike v. 搭便车旅行 m…...
Vue项目实战-空间论坛(2)
项目实战 实现userlist页面 获取userlist列表,可使用ajax,axios 实现 这里采用ajax实现,需要添加Jquery依赖,然后在UserListView.vue中引入 在UserListView.vue组件的入口函数中定义users变量,并引入ref 使用ajax从云端动…...
小老虎吃汉堡,认识continue和break
continue;//结束本次循环,执行下面的循环 break; //结束本次及以后的循环,执行循环下面的代码1. /*小老虎在吃汉堡,但是第三个汉堡上被挤了芥末,不能吃,跳过去又吃第四、五个*/ for (int i1;i<5;i){if (i3){contin…...
docker搭建zero-ui
确保你已经安装了Docker和Docker Compose。如果没有,请参照官方文档安装:Docker 和 Docker Compose。 使用 Docker CLI 获取 Zero-UI 镜像: 首先,你需要从Docker Hub获取Zero-UI的Docker镜像。你可以使用 docker pull 命令来下载它。 docker…...
187基于matlab的弹道目标跟踪滤波方法
基于matlab的弹道目标跟踪滤波方法,扩展卡尔曼滤波(extended Kalman filter, EKF)、转换测量卡尔曼滤波(conversion measurement Kalman filter, CMKF)跟踪滤波,得到距离、方位角、俯仰角误差结果。程序已调…...
讲给自己听的的技术---WMS
标题一 点题 为什么我会说,这是说给自己听的了?做项目有三个月了,外加之前三个月的自学,自我感觉对WMS系统有了一点了解,今天三月九号晚上九点二十,就让我自己和自己说说吧。 标题二 WMS的职责是什么…...
在Java中,请详细讲解并发、多线程、异步的区别和联系
在Java中,请详细讲解并发、多线程、异步的区别和联系 并发、多线程、异步是Java编程中与并行处理相关的三个重要概念,它们之间既有区别也有联系。 并发(Concurrency): 并发是指在同一时间段内,多个任务或…...
网络安全及信息安全常识
网络安全及信息安全常识 闻知:西安之地,借软件正版化,诈骗违法犯罪多有。本人自2008年10月,以劳动合同入职软件公司后,知至今日,普通百姓,电脑知识匮乏。因此,当此时,有前…...
(十五)【Jmeter】取样器(Sampler)之HTTP请求
简述 操作路径如下: HTTP请求 (HTTP Sampler): 作用:模拟发送HTTP请求并获取响应。配置:设置URL、请求方法、请求参数等参数。使用场景:测试Web应用程序的HTTP接口性能。优点:支持多种HTTP方法和请求参数,适用于大多数Web应用程序测试。缺点:功能较为基础,对于复杂…...
YOLOv8.1.0安装
【YOLO】YOLOv8训练环境配置 python 3.8.18 cuda 11.3.1 cudnn 8.2.1 pytorch 1.12.1-gpu版 - 知乎 (zhihu.com) 一、Anaconda 默认装好了可用的Anaconda,安装教程见Win10系统anaconda安装 - 知乎 (zhihu.com) 二、在虚拟环境下用conda安装 1.创建虚拟环境 …...
Linux下使用MD5SUM命令详解
在Linux操作系统中,md5sum是一个非常实用的工具,用于生成和校验文件的MD5散列值。MD5是一种广泛使用的密码散列函数,可以产生一个128位(16字节)的散列值,常用来确保数据的完整性和一致性。 一、MD5SUM命令…...
蓝桥杯python常用内置函数
一、 abs() #返回数字的绝对值 例: 二、 all() #判断给定的可迭代参数中的所有元素是否都为True,若是则返回True,反之返回False 例: 三、 any() #判断给定的可迭代参数是否都为False,全为False则返回False&am…...
设计模式 工厂模式
工厂模式,最重要的是反射。 反射:Class类 java的注释是这样写的: Class没有公共构造函数。相反,Class对象是在类加载时由Java虚拟机自动构造的,并通过调用类加载器中的defineClass方法来实现。...
5G NR物理层探秘:PBCH信道与MIB消息的编码、映射与波束赋形
1. PBCH信道与MIB消息的5G广播基石 当你刚打开5G手机时,屏幕上瞬间跳出的信号格背后,藏着一场精妙的物理层对话。这场对话的第一句问候,就来自我们今天要拆解的PBCH(物理广播信道)和它搭载的MIB(主信息块&a…...
终极Typhoeus常见问题解决手册:从超时设置到代理配置的完整指南
终极Typhoeus常见问题解决手册:从超时设置到代理配置的完整指南 【免费下载链接】typhoeus Typhoeus wraps libcurl in order to make fast and reliable requests. 项目地址: https://gitcode.com/gh_mirrors/ty/typhoeus Typhoeus是一个基于libcurl的Ruby…...
技术顶尖却始终赚不到大钱:程序员最容易忽略的那门“手艺”
在技术一线,越来越多程序员把“精通Java”“刷LeetCode”“深挖源码”当成职业护城河。年薪五十万、技术专家头衔、公司核心项目一把抓,看起来前途无量。可真正到职业天花板时,却发现自己和65岁只剩105美元的肯德基上校桑德斯上校陷入了同一个…...
从源码到实战:在VS2022中集成curl网络库的完整指南
1. 为什么选择curl库? 如果你正在用C开发Windows应用程序,并且需要实现HTTP客户端功能,那么libcurl几乎是你的不二之选。作为一个成熟稳定的网络传输库,curl支持包括HTTP、HTTPS、FTP在内的多种协议,被广泛应用于各种开…...
终极指南:如何用LayerDivider实现插画智能分层与PSD自动生成
终极指南:如何用LayerDivider实现插画智能分层与PSD自动生成 【免费下载链接】layerdivider A tool to divide a single illustration into a layered structure. 项目地址: https://gitcode.com/gh_mirrors/la/layerdivider 你是否曾经为了一张精美的插画需…...
真的绝了!这套私域运营思路和方法让我效率提升10倍
你有没有发现,很多人做私域,每天花4.5小时在重复劳动上——回消息2小时、写朋友圈1小时、手动拉群0.5小时、跟进客户1小时。一年下来1642.5个小时,折合68天。结果呢?好友从3000删到800,月成交从50单跌到8单,…...
DeepSeek-R1-Distill-Qwen-1.5B快速部署:vLLM启动,GPU显存优化方案
DeepSeek-R1-Distill-Qwen-1.5B快速部署:vLLM启动与GPU显存优化方案 1. 模型与框架介绍 1.1 DeepSeek-R1-Distill-Qwen-1.5B模型特点 DeepSeek-R1-Distill-Qwen-1.5B是DeepSeek团队基于Qwen2.5-Math-1.5B基础模型,通过知识蒸馏技术融合R1架构优势打造…...
用Global Wheat Detection数据集做目标检测?这份保姆级数据预处理与可视化教程请收好
Global Wheat Detection数据集实战:从数据解析到可视化洞察 小麦作为全球最重要的粮食作物之一,其产量预测对农业决策至关重要。而准确检测田间小麦头数量是产量估算的关键步骤。Global Wheat Detection数据集正是为此而生,它包含了来自全球…...
别再写冗长路径了!Qt QML资源文件管理:用前缀和别名让代码清爽3倍
别再写冗长路径了!Qt QML资源文件管理:用前缀和别名让代码清爽3倍 在QML项目开发中,资源路径管理是个容易被忽视却影响深远的细节。想象一下,当你第20次在代码中敲入source: "images/images/code.jpg"时,是否…...
【SketchUp 2024】草图大师场景优化实战:群组与组件工具的高效协同与避坑指南
1. 群组与组件的基础认知:从零理解核心差异 刚接触SketchUp时,我最常混淆的就是群组和组件的区别。直到有次做室内设计项目,移动沙发时连带拽歪了整面墙,才真正明白两者的分界线。群组就像打包快递——把零散的几何体用胶带捆成包…...
