C#连接Oracle数据库基本类
C#用来连接oracle数据库的基本类:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Configuration;
using System.Data;
using Oracle.DataAccess.Client; namespace DLL.Base
{
/// <summary>
/// oracle数据库基础类
/// </summary>
public class OracleDBContent
{
#region 私有
#region 私有属性
/// <summary>
/// 获取数据库连接字符串
/// </summary>
private static string _connectstring = ConfigurationManager.ConnectionStrings["OraConn"].ConnectionString;
#endregion #region 私有方法
/// <summary>
/// 获取数据(查询)
/// </summary>
/// <param name="sql">要执行的SQL语句</param>
/// <returns></returns>
private DataSet _GET(string sql)
{
try
{
DataSet dt = new DataSet();
OracleConnection connect = new OracleConnection(_connectstring);
connect.Open();
OracleDataAdapter db = new OracleDataAdapter(sql, connect);
db.Fill(dt);
connect.Close();
return dt;
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
} /// <summary>
/// 执行SQl语句(增、删、改)
/// </summary>
/// <param name="sql">要执行的SQl语句</param>
/// <returns></returns>
private bool _EXCUTE(string sql)
{
try
{
OracleConnection connect = new OracleConnection(_connectstring);
OracleCommand cmd = new OracleCommand();
cmd.Connection = connect;
cmd.CommandText = sql;
connect.Open();
cmd.ExecuteNonQuery();
connect.Close();
return true;
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
}
#endregion
#endregion #region 公共方法
/// <summary>
/// 查询
/// </summary>
/// <param name="sql">数据库查询语句</param>
/// <returns></returns>
public virtual DataSet GetData(string sql)
{
try
{
string sqlstr = sql;
return _GET(sqlstr);
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
} /// <summary>
/// 新增
/// </summary>
/// <param name="sql">新增语句</param>
/// <returns></returns>
public virtual bool Insert(string sql)
{
try
{
return _EXCUTE(sql);
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
} /// <summary>
/// 删除
/// </summary>
/// <param name="sql">删除语句</param>
/// <returns></returns>
public virtual bool Delete(string sql)
{
try
{
return _EXCUTE(sql);
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
} /// <summary>
/// 更新
/// </summary>
/// <param name="sql">更新语句</param>
/// <returns></returns>
public virtual bool Update(string sql)
{
try
{
return _EXCUTE(sql);
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
}
#endregion
}
}
(Web.config或App.config)配置文件中数据库连接的配置:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<connectionStrings>
<!--测试数据库-->
<add name="OraConn" connectionString="Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.172)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=Test)));User Id=sa;Password=test123;"/>
</connectionStrings>
<system.web>
<compilation debug="true" targetFramework="4.0" />
</system.web>
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior>
<!-- 为避免泄漏元数据信息,请在部署前将以下值设置为 false 并删除上面的元数据终结点 -->
<serviceMetadata httpGetEnabled="true"/>
<!-- 要接收故障异常详细信息以进行调试,请将以下值设置为 true。在部署前设置为 false 以避免泄漏异常信息 -->
<serviceDebug includeExceptionDetailInFaults="false"/>
</behavior>
</serviceBehaviors>
</behaviors>
<serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
</system.serviceModel>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true"/>
</system.webServer> </configuration>
C#连接Oracle数据库基本类的更多相关文章
- java连接Oracle数据库
Oracle数据库先创建一个表和添加一些数据 1.先在Oracle数据库中创建一个student表: create table student ( id ) not null primary key, ...
- 记录排查解决Hubble.Net连接Oracle数据库建立镜像库数据丢失的问题
起因 前几天在弄Hubble连接Oracle数据库,然后在mongodb中建立一个镜像数据库; 发现一个问题,原本数据是11W,但是镜像库中只有6w多条; 刚开始以为是没运行好,又rebuild了一下 ...
- NodeJs连接Oracle数据库
nodejs连接oracle数据库,各个平台的官方详情文档:https://github.com/oracle/node-oracledb/blob/master/INSTALL.md 我的nodej ...
- jdbc连接oracle数据库
/*** 通过改变配置文件来连接不同数据库*/package com.xykj.jdbc; import static org.junit.Assert.*; import java.io.Input ...
- 用VS连接oracle数据库时ORA-12504错误
在用VS2008连接oracle数据库时,可能会出现: ORA-12504: TNS: 监听程序在 CONNECT_DATA 中未获得 SERVICE_NAME 只需在web.config文件Data ...
- ASP.NET连接Oracle数据库的步骤详解(转)
ASP.NET连接Oracle数据库的步骤详解 本文我们主要介绍了ASP.NET连接Oracle数据库的步骤及每个步骤需要进行的设置,希望能够对您有所帮助. 在用ASP.NET开发应用程序时, ...
- 64 位win 7或windows 8下的visual studio不能连接Oracle数据库调试网站的问题
在64 位win 7或windows 8系统下,visual studio直接F5运行网站调试,你会发现不能连接Oracle数据库,会报一个“ORA-06413: Connection not ope ...
- [原创]安装Oracle 11gR2,以及如何在win8下使用plsql develper连接Oracle数据库 ,在这里和大家分享下
一,关于win8下安装Oracle 11gR2 1.我下载的是Oracle_11gR2_win64.其中有两个包: 注意:在解压了之后将:win64_11gR2_database_2of2\datab ...
- 用Navicat连接Oracle数据库时报错ORA-28547:connection to server failed,probable Oracle Net admin error
用Navicat连接Oracle数据库时出现如下错误 上网一查原来是oci.dll版本不对.因为Navicat是通过Oracle客户端连接Oracle服务器的,Oracle的客户端分为两种,一种是标准 ...
随机推荐
- Unix/Linux环境C编程入门教程(9) unbntu CCPP开发环境搭建
1. 首先启动VMware,如果没有安装,请查看前面VMware的安装视频 2 启动虚拟机向导,选择自定义 3 单击下一步 4 选择稍后安装操作系统 5 .选择unbntu 64linux ...
- javascript 中 keyup、keypress和keydown事件
keyup.keypress和keydown事件都是有关于键盘的事件 1. keydown事件在键盘的键被按下的时候触发,keyup 事件在按键被释放的时候触发 keydown.keypress ...
- Linux编程---套接字
网络相关的东西差点儿都是建立在套接字之上.所以这个内容对于程序猿来说还是蛮重要的啊. 事实上套接字也就是一个特殊的设备文件而已,我始终不能明确为什么要叫套接字.这么个奇怪的名字.只是还是就这样算了吧. ...
- Android 刷新下拉控制 SwipeRefreshLayout
上个月,google它宣布了自己的下拉刷新控制------SwipeRefreshLayout,控制封装在android-support-v4.jar包裹,依靠听力OnRefreshListener实 ...
- c/c++中与字符串处理相关的函数
void *memccpy (void *dest, const void *src, int c, size_t n); 从src所指向的对象复制n个字符到dest所指向的对象中.如果复制过程中遇到 ...
- 从一句SQL得出的启示
select count(*) + 1 from `table` where rank > (select rank from `table` where id = *) 上面那句SQL 给了我 ...
- MySQL学习笔记(2)
打开数据库 USE db_name; SELECT DATABASE();查看当前所选中的数据库 创建数据表 CREATA TABLE [IF NOT EXISTS] table_name ( col ...
- BZOJ 1832: [AHOI2008]聚会( LCA )
LCA模板题...不难发现一定是在某2个人的LCA处集合是最优的, 然后就3个LCA取个最小值就OK了. 距离就用深度去减一减就可以了. 时间复杂度O(N+MlogN) (树链剖分) -------- ...
- C++の友元の例
#include<iostream> #include<cmath> using namespace std; class Point { public: Point(doub ...
- Fiddler [Fiddler] Connection to localhost. failed.
原文地址:http://blog.chinaunix.net/uid-20675015-id-1899931.html 在用Fiddler调试本机的网站时,即访问http://localhost,返回 ...