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的客户端分为两种,一种是标准 ...
随机推荐
- 如何使用win7自带的备份还原以及创建系统镜像------傻瓜式教程
对于经常鼓捣电脑的童鞋来说,装系统是一件极其平常的事情,不过系统装多了之后,我们会感到比较烦躁,因为每一次装系统意味着驱动的重新安装,程序的重新安装,每次这么鼓捣几次,半天时间就花在这上面了,效率是在 ...
- VPN的分类方式
VPN的分类方式 VPN的分类方式比较混乱.不同的生产厂家在销售它们的VPN产品时使用了不同的分类方式,它们主要是产品的角度来划分的.不同的ISP在开展VPN业务时也推出了不同的分类方式,他们主 ...
- SPOJ 3267 求区间不同数的个数
题意:给定一个数列,每次查询一个区间不同数的个数. 做法:离线+BIT维护.将查询按右端点排序.从左到右扫,如果该数之前出现过,则将之前出现过的位置相应删除:当前位置则添加1.这样做就保证每次扫描到的 ...
- URL中增加BASE64加密的字符串引起的问题(java.net.MalformedURLException:Illegal character in URL)
序 昨天在做一个 Demo 的时候,因为是调用第三方的接口,採用的是 HTTP 的通信协议,依照文档上的说明,须要把參数进行加密后增加到 URL 中.可是,就是这个看似普普通通的操作,却让我着实费了非 ...
- System.Data.SQLite兼容32位和64位问题
SQLite版本分的很详细,本机是64位在32位会出现问题,经过搜索找到解决方案. 这是我以前写的32位在我现在的机子上的运行报错. 类似这样的. 将当前说明文档的目录下的x64.x86目录和Syst ...
- 网页平面设计 CSS
1.在html中引入css的方法 1.行内式 行内式即在标记的style属性中设定CSS样式,这种方式本质上没有体现出CSS的优势,因此不推荐使用. 例如:<h1 style="属性名 ...
- 页面加载时,页面中DIV随之滑动出来;去掉页面滚动条
<head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8&quo ...
- RPC介绍以及编程
1 RPC介绍 RPC(Remote Procedure Call Protocol)——远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协 议. RPC采用客 ...
- iOS开发之C语言函数库
在iOS开发中不可避免的需要使用数学函数进行计算,我们可以使用C标准库头文件中定义的数学常量宏及数学函数来进行基本的数学计算操作,这些C函数都可以在微软的MSDNAPI库中找到.(https://ms ...
- 155Min Stack
题目地址:155Min Stack 最近为了提高数据结构和算法能力,保证每天一到leetcode的题目.从easy开始,感觉这道题目还蛮好,记录一下. 题目大意:就是维护一个栈,获得栈中元素的的最小值 ...