1.首先打开vs开发工具创建一个窗体项目,我这边以vs2013为列子,取名OracleDemo,如下图

2.在窗体上画上几个控件如下图所示,一共五个button按钮,一个dataGridView用来显示数据使用,如下图

3.下面是重点,我们在项目中新加一个类,取名叫做OracleHelpher.cs用来封装数据库操作类,使用前请先引用如下,不然无法调用

封装的类的具体代码如下:封装了四个方法,分别对应Oracle数据库的增删改查,
不熟的童鞋可以直接复制使用。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data;
using System.Data.OracleClient;
namespace dataDemo
{
public class OracleHelpher
{
public static string connectString = "User ID=sluser;Password=sljtyy_88888888;Data Source=(DESCRIPTION = (ADDRESS_LIST= (ADDRESS = (PROTOCOL = TCP)(HOST =AHSL)(PORT =1521))) (CONNECT_DATA = (SERVICE_NAME = slkm3)))";
#region 数据库连接
public static OracleConnection DbConn(ref string message, ref Boolean re)
{
OracleConnection conn;
re = false;
message = "";
conn = new OracleConnection(connectString);
try
{
conn.Open();
re = true;
}
catch (Exception ex)
{
message = "错误:" + ex.Message.ToString();
re = false;
return null;
}
finally
{
conn.Close();
}
return conn;
}
#endregion
#region 增
public static Boolean AddSql(string sql, ref string message)
{
bool re = false;
try
{
OracleConnection conn = DbConn(ref message, ref re);
if (conn == null)
{
re = false;
message = "数据库连接对象为空";
}
else
{
try
{
if (conn.State == ConnectionState.Closed)
{
conn.Open();
}
}
catch (Exception eee)
{
re = false;
message = eee.Message.ToString();
}
OracleCommand cmd = new OracleCommand(sql, conn);
int count = cmd.ExecuteNonQuery();
if (count > 0)
{
re = true;
}
else
{
re = false;
message = "数据插入失败";
}
cmd.Dispose();
conn.Close();
}
}
catch (Exception ee)
{
re = false;
message = "add数据出错,原因:" + ee.Message.ToString();
}
return re;
}
#endregion
#region 删
public static Boolean DeleteSql(string sql, ref string message)
{
bool re = false;
try
{
OracleConnection conn = DbConn(ref message, ref re);
if (conn == null)
{
re = false;
message = "数据库连接对象为空";
}
else
{
try
{
if (conn.State == ConnectionState.Closed)
{
conn.Open();
}
}
catch (Exception eee)
{
re = false;
message = eee.Message.ToString();
}
OracleCommand cmd = new OracleCommand(sql, conn);
int count = cmd.ExecuteNonQuery();
if (count > 0)
{
re = true;
}
else
{
re = false;
message = "数据删除失败";
}
cmd.Dispose();
conn.Close();
}
}
catch (Exception ee)
{
re = false;
message = "add数据出错,原因:" + ee.Message.ToString();
}
return re;
}
#endregion
#region 改每次调用都会调用代码
public static Boolean UpdateSql(string sql, ref string message)
{
bool re = false;
try
{
OracleConnection conn = DbConn(ref message, ref re);
if (conn == null)
{
re = false;
message = "数据库连接对象为空";
}
else
{
try
{
if (conn.State == ConnectionState.Closed)
{
conn.Open();
}
}
catch (Exception eee)
{
re = false;
message = eee.Message.ToString();
}
OracleCommand cmd = new OracleCommand(sql, conn);
int count = cmd.ExecuteNonQuery();
if (count > 0)
{
re = true;
}
else
{
re = false;
message = "数据更新失败";
}
cmd.Dispose();
conn.Close();
}
}
catch (Exception ee)
{
re = false;
message = "add数据出错,原因:" + ee.Message.ToString();
}
return re;
}
#endregion
#region 查
public static DataTable SelectSql(string sql, ref string message)
{
DataTable dt = null;
OracleConnection conn;
message = string.Empty;
string err = "";
bool re = false;
try
{
conn = DbConn(ref err, ref re);
if (conn == null)
{
message = "数据库连接对象为空";
return null;
}
if (conn.State == ConnectionState.Closed)
{
try
{
conn.Open();
}
catch (Exception ex)
{
message = ex.Message;
return null;
}
}
}
catch (Exception ee)
{
message = "数据库连接失败,原因:" + ee.Message.ToString();
return null;
}
try
{
OracleDataAdapter adapter = new OracleDataAdapter(sql, conn);
DataSet set = new DataSet();
adapter.Fill(set);
dt = set.Tables[0];
conn.Close();
conn.Dispose();
adapter.Dispose();
set.Dispose();
}
catch (Exception ex)
{
message = ex.Message.ToString(); ;
}
return dt;
}
#endregion
}
}
4.我们现在来开始编写 form的代码,第一测试下数据库是否连接正常按钮,并且撰写相关的代码
在测试Oracle数据库按钮中编写如下代码:
private void button1_Click(object sender, EventArgs e)
{
try
{
OracleConnection conn = OracleHelpher.DbConn(ref message, ref re);
if (re)
{
MessageBox.Show("oracle数据库链接成功");
}
else
{
MessageBox.Show("oracle数据库链接失败:" + message);
}
}
catch (Exception ex)
{
MessageBox.Show("oracle数据库链接失败:" + ex);
}
}
我们来运行界面点击试一下效果,如下图

数据库连接成功,接下面我们来查询一些数据,在查询数据的按钮里面增加如下
代码,其中我这里查询的表是t_kc,你们可以根据自己的需要来修改
private void button5_Click(object sender, EventArgs e)
{
string sql = string.Format("select * from t_kc");
DataTable dt = OracleHelpher.SelectSql(sql, ref message);
this.dataGridView1.DataSource = dt;
}
我们 来运行一下看一下效果

这样数据库的数据就被我们取到了,同理怎加数据、删除数据、修改数据也是如此
5.总结
我们操作使用c#操作数据库的时候一定要把操作类封装起来,这样我们在后面的调取
时候就不需要特别麻烦就能取到数据了,同时一定要学会撰写sql语句,希望看到这篇文章后对你有一定的帮助,为了方便大家的学习,我把demo也上传了,有需要的同学可以自己下面哈!连接附在后面的!
https://download.youkuaiyun.com/download/qq_35620884/25415846