C#中Oracle数据库的连接类
1.C#连接Oracle数据库,首先需要在引用中添加System.Data.OracleClient组件
2.在类中引用System.Data.OracleClient组件:using System.Data.OracleClient
3.打开Oracle数据库连接
在打开数据库连接时,根据实际情况,我们把连接的字符串信息写在xml配置文件中,读取xml配置文件获取连接信息字符串。
配置文件信息如下:
注意:配置文件需要放在项目实际目录下的bin\Release中
config.xml
<?xml version="1.0" encoding="utf-8" ?>
<prog>
<oracle>
<connString>server=192.168.1.189;uid=AAMS;pwd=111111;data source=orcl</connString>
<oleString>Password=111111;User ID=AAMS;Data Source=ORCL;Persist Security Info=True</oleString>
</oracle>
</prog>
读取xml配置文件信息:
/// <summary>
/// 获取XML文件中对应节点的值
/// </summary>
/// <param name="name"></param>
/// <returns></returns>
public static string getXmlValue(string nodeName)
{
string s = "";
string nodeValue = "";
//需要using System.Xml
XmlDocument xd = new XmlDocument();
xd.Load(Program.PATH + "\\config.xml");
XmlNodeReader xnr = new XmlNodeReader(xd);
while (xnr.Read())
{
switch (xnr.NodeType)
{
case XmlNodeType.Element:
s = xnr.Name;
break;
case XmlNodeType.Text:
if (s.Equals(nodeName))
{
nodeValue = xnr.Value;
}
break;
}
}
return nodeValue;
}
打开数据库连接
public static string connString = "";
public static OracleConnection conn = null;
//打开数据库连接
public static bool Open()
{
//从配置文件中获取连接字符串
//配置文件需要放在项目目录下的bin\Release中
connString = getXmlValue("connString");
conn = new OracleConnection(getXmlValue("connString"));
try
{
conn.Open();
Console.WriteLine("数据库连接成功");
return true;
}
catch (System.Exception ex)
{
Console.Write(ex.Message);
MessageBox.Show("未能连接到数据库");
return false;
}
4.关闭数据库连接
public static void Close()
{
if (conn != null)
{
conn.Close();
conn.Dispose();
conn = null;
Console.WriteLine("数据库关闭成功");
}
}
5.添加数据(使用拼接sql语句的方法)
public static int insert(int ruleId, int equipmentId, String equipmentName, String propertyName, int ruleType, String ruleRequest, String ruleRequestOther, String ruleExplain)
{
String sql = "insert into Device_Attr t(CA_ID,BASEID,BASENAME,CA_NAME,CA_RULETYPE,CA_RULETEXT,CA_RULETEXT2,t.CONTENT) values(" + ruleId + "," + equipmentId + ",'" + equipmentName + "$','" + propertyName + "','" + ruleType + "','" + ruleRequest + "','" + ruleRequestOther + "','" + ruleExplain + "')";
Console.WriteLine(sql);
OracleCommand oc = new OracleCommand(sql, conn);
int result = oc.ExecuteNonQuery();
return result;
}
6.删除数据
public static int delete(string sql)
{
OracleCommand cmd = new OracleCommand(sql, conn);
int result = cmd.ExecuteNonQuery();
return result;
}
7.修改数据(使用参数的方法,与添加数据用的是两种方法,这两种方法都可行)
public static int update(int ruleId, int equipmentId, String equipmentName, String propertyName, int ruleType, String ruleRequest, String ruleRequestOther, String ruleExplain)
{
String sql = "update Device_Attr t set t.BASEID = :equipmentId, t.BASENAME = :equipmentName,t.CA_NAME = :propertyName,t.CA_RULETYPE = :ruleType,t.CA_RULETEXT = :ruleRequest,t.CA_RULETEXT2 = :ruleRequestOther,t.CONTENT = :ruleExplain where t.CA_ID =:ruleId";
OracleCommand cmd = new OracleCommand(sql, conn);
OracleParameter param_1 = new OracleParameter(":equipmentId", equipmentId);
cmd.Parameters.Add(param_1);
OracleParameter param_2 = new OracleParameter(":equipmentName", equipmentName + "$");
cmd.Parameters.Add(param_2);
OracleParameter param_3 = new OracleParameter(":propertyName", propertyName);
cmd.Parameters.Add(param_3);
OracleParameter param_4 = new OracleParameter(":ruleType", ruleType);
cmd.Parameters.Add(param_4);
OracleParameter param_5 = new OracleParameter(":ruleRequest", ruleRequest);
cmd.Parameters.Add(param_5);
OracleParameter param_6 = new OracleParameter(":ruleRequestOther", ruleRequestOther);
cmd.Parameters.Add(param_6);
OracleParameter param_7 = new OracleParameter(":ruleExplain", ruleExplain);
cmd.Parameters.Add(param_7);
OracleParameter param_8 = new OracleParameter(":ruleId", ruleId);
cmd.Parameters.Add(param_8);
int result = cmd.ExecuteNonQuery();
return result;
}
8.查询数据
public static OracleDataReader QueryForReader(string sql)
{
try
{
OracleCommand cmd = conn.CreateCommand();
cmd.CommandText = sql;
OracleDataReader dtr = cmd.ExecuteReader();
return dtr;
}
catch (System.Exception ex)
{
Console.WriteLine(ex.ToString());
return null;
}
}
分享到:
相关推荐
C#连接oracle数据库执行简单的增删改查操作.docx
C#与Oracle数据库进行增删改查,附源码、dll,可直接运行应用程序调试
c#登陆界面与Oracle数据库连接并增删改查
C#连接oracle数据库,增删改查实例,OracleParameter防Sql注入等,适用于新手学习
在VS2010中采用C#语言,实现对Oracle数据库的连接,创建表,添加、查询、修改、删除数据的操作和界面显示,提供完整示例源码。
详细的描述了C#与Oracle数据交互,进行增删改查操作。
C#连接Oracle数据库(查询数据)方法,好东西,分享一下
c# 实现Oracle数据库增删改查
vs2015 C# 连接 Oracle数据库及增删改查操作,适合新手。
封装了对Oracle数据库的连接、增删改查、事务处理、查询直接得到数据集。使对数据库的操作变得很方便、简易
C#连接Oracle数据库(更改数据库中的记录并查询更改后的数据)
使用hibernate连接oracle数据库的详细方法,代码实现实现数据库的增删改查.zip
使用hibernate连接oracle数据库的详细方法,代码实现实现数据库的增删改查.rar
在前端界面操作,实现数据库后台的增删改查语句。
增删改查图文教程 操练环境 VS2010 sp1 + c# + Oracle + Win10 代码如下: using System; using System.Windows.Forms; using System.Data; namespace KEZZ { public partial class Form1 : Form { public ...
C# 链接Oracle数据库操作类 SqlHelper.cs,.NET3.0以上即可使用,涵盖了oracle数据库的增删改查操作,并可调用存储过程,因是源码,可根据自己实际需要再修改,灵活性较大
操作对象:Oracle 11g 操作工具:VS2008 操作行为:数据库典型的CRUD动作 主要目的:通过对代码的研究熟悉CS结构,通过此项目争取做到举一反三拓展,共同学习,共同进步~ PS:数据表已导出
C#项目引用Oracle.ManagedDataAccess,实现对Oracle数据库的操作,包含增删改查,存储过程执行等
NULL 博文链接:https://dampce032.iteye.com/blog/976695
C#调用oracle数据库,商品增删改查系统,采用VS2010工具开发。