OracleHelper与SqlServerHelper
1、OracleHelper
- using System;
- using System.Data;
- using System.Configuration;
- using System.Linq;
- using System.Web;
- using System.Web.Security;
- using System.Web.UI;
- using System.Web.UI.HtmlControls;
- using System.Web.UI.WebControls;
- using System.Web.UI.WebControls.WebParts;
- using System.Xml.Linq;
- using Oracle.DataAccess.Client;
- namespace OracleDBDemo
- {
- public class OracleHelper
- {
- private static string oracleConnectionStr = ConfigurationManager.ConnectionStrings["OracleConnectionString"].ToString();
- public static DataTable ExecuteDataTable(string sql,params OracleParameter[] paramList)
- {
- using (OracleConnection conn = new OracleConnection(oracleConnectionStr))
- {
- conn.Open();
- using (OracleCommand command = conn.CreateCommand())
- {
- command.CommandText = sql;
- command.Parameters.AddRange(paramList);
- DataTable dt = new DataTable();
- OracleDataAdapter adapter = new OracleDataAdapter(command);
- adapter.Fill(dt);
- return dt;
- }
- }
- }
- public static int ExecuteNonQuery(string sql, params OracleParameter[] paramList)
- {
- using(OracleConnection conn = new OracleConnection(oracleConnectionStr))
- {
- conn.Open();
- using (OracleCommand command = conn.CreateCommand())
- {
- command.CommandText = sql;
- command.Parameters.AddRange(paramList);
- return command.ExecuteNonQuery();
- }
- }
- }
- public static object ExecuteScalar(string sql, params OracleParameter[] paramList)
- {
- using (OracleConnection conn = new OracleConnection(oracleConnectionStr))
- {
- conn.Open();
- using (OracleCommand command = conn.CreateCommand())
- {
- command.CommandText = sql;
- command.Parameters.AddRange(paramList);
- return command.ExecuteScalar();
- }
- }
- }
- }
- }
2、SqlServerHelper
- using System;
- using System.Data;
- using System.Configuration;
- using System.Linq;
- using System.Web;
- using System.Web.Security;
- using System.Web.UI;
- using System.Web.UI.HtmlControls;
- using System.Web.UI.WebControls;
- using System.Web.UI.WebControls.WebParts;
- using System.Xml.Linq;
- using System.Data.SqlClient;
- using System.Data.Common;
- namespace OracleDBDemo
- {
- public class SqlServerHelper
- {
- private static string sqlConnenctionStr = ConfigurationManager.ConnectionStrings["SqlServerConnectionString"].ToString();
- public static DataTable ExecuteDataTable(string sql,params SqlParameter[] paramList)
- {
- using(SqlConnection conn = new SqlConnection(sqlConnenctionStr))
- {
- conn.Open();
- using(SqlCommand command = conn.CreateCommand())
- {
- command.CommandText = sql;
- command.Parameters.AddRange(paramList);
- DataTable dt = new DataTable();
- SqlDataAdapter adapter = new SqlDataAdapter(command);
- adapter.Fill(dt);
- return dt;
- }
- }
- }
- public static int ExecuteNonQuery(string sql, params SqlParameter[] paramList)
- {
- using (SqlConnection conn = new SqlConnection(sqlConnenctionStr))
- {
- conn.Open();
- using (SqlCommand command = conn.CreateCommand())
- {
- command.CommandText = sql;
- command.Parameters.AddRange(paramList);
- return command.ExecuteNonQuery();
- }
- }
- }
- public static object ExecuteScalar(string sql, params SqlParameter[] paramList)
- {
- using (SqlConnection conn = new SqlConnection(sqlConnenctionStr))
- {
- conn.Open();
- using (SqlCommand command = conn.CreateCommand())
- {
- command.CommandText = sql;
- command.Parameters.AddRange(paramList);
- object obj = command.ExecuteScalar();
- return obj;
- }
- }
- }
- }
- }
3、web.config
- <connectionStrings>
- <add name="SqlServerConnectionString" connectionString="Data Source=.\sql2005;Initial Catalog=Credit;Integrated Security=False;User ID=sa;Password=123456;Connect Timeout=15;Encrypt=False;TrustServerCertificate=False" providerName="System.Data.SqlClient"/>
<add name="OracleConnectionString" connectionString="DATA SOURCE=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=DBName)));PASSWORD=a123456;PERSIST SECURITY INFO=True;USER ID=system" providerName="Oracle.DataAccess.Client"/>- </connectionStrings>
4、数据测试
- using System;
- using System.Collections;
- using System.Configuration;
- using System.Data;
- using System.Linq;
- using System.Web;
- using System.Web.Security;
- using System.Web.UI;
- using System.Web.UI.HtmlControls;
- using System.Web.UI.WebControls;
- using System.Web.UI.WebControls.WebParts;
- using System.Xml.Linq;
- using System.Data.SqlClient;
- using Oracle.DataAccess.Client;
- namespace OracleDBDemo
- {
- public partial class _Default : System.Web.UI.Page
- {
- protected void Page_Load(object sender, EventArgs e)
- {
- OracleExecuteNonQuery();
- }
- #region SqlServer
- private void SqlServerExecuteDataTable()
- {
- string sql = "select * from Account";
- DataTable dt = SqlServerHelper.ExecuteDataTable(sql);
- }
- private void SqlServerExecuteNonQuery()
- {
- string sql = "insert into Account(AccountName,createtime) values(@name,@time)";
- SqlServerHelper.ExecuteNonQuery(sql, new SqlParameter("@name", "你好屌!!!"), new SqlParameter("@time", DateTime.Now));
- }
- private void SqlServerExecuteScalar()
- {
- string sql = "select max(id) from account where AccountName=@name";
- object obj = SqlServerHelper.ExecuteScalar(sql, new SqlParameter("@name", "ff"));
- Response.Write(obj.ToString());
- }
- #endregion
- #region Oracle
- private void OracleExecuteDataTable()
- {
- string sql = "select * from AccountInfo";
- DataTable dt = OracleHelper.ExecuteDataTable(sql);
- }
- private void OracleExecuteNonQuery()
- {
- string sql = "insert into AccountInfo(id,AccountInfoName) values(:id,:name)";
- OracleHelper.ExecuteNonQuery(sql, new OracleParameter(":id", ),new OracleParameter(":name", "你好屌!!!"));
- }
- private void OracleExecuteScalar()
- {
- string sql = "select max(id) from account where AccountName=@name";
- object obj = SqlServerHelper.ExecuteScalar(sql, new SqlParameter("@name", "ff"));
- Response.Write(obj.ToString());
- }
- #endregion
- }
- }
备注:
/*
* 使用参数化 DbCommand 的一个缺点是需要参数的代码将仅适用于支持相同语法的提供程序。
* OleDb、SqlClient 和 Oracle 提供程序全部使用不同的语法。
* 例如:
* SqlClient 参数语法需要使用“@”作为参数占位符;
* OleDb 参数语法需要使用问号“?”作为参数占位符;
* Oracle 参数语法需要使用“:”作为参数占位符。
*/
OracleHelper与SqlServerHelper的更多相关文章
- 话说C#程序员人手一个ORM
话说C#程序员人手一个ORM,确实没有必要再写ORM了,不过我的ORM并不是新的,是从DBHelper演化过来的,算是DBHelper魔改版. 目前流行的ORM有EF.Dapper.SqlSugar. ...
- OracleHelper类
using System; using System.Collections; using System.Collections.Generic; using System.Data; using S ...
- 分享一个oraclehelper
分享一个拿即用的oraclehelper 首先要引用本机中的oralce access,如果是64位的话,也必须是64位运行,不然会报连接为空connection 等于null. using Orac ...
- 丰富自己的代码库-SqlServerHelper(Ado)
设计思路很简单,就是把数据封装为DataTable类,封装了类型转换,使用者可以不必考虑任何类型转换,而使用VC提供的CString即可.封装了按行号查找功能,先看代码 #pragma once #i ...
- OracleHelper数据库事务处理
原理:需要开启事务的Action贴上Transaction标签,则Action执行前开启事务,Action执行完提交事务,如果Action报错,则回滚事务. OracleHelper代码: using ...
- OracleHelper(对增删改查分页查询操作进行了面向对象的封装,对批量增删改操作的事务封装)
公司的一个新项目使用ASP.NET MVC开发,经理让我写个OracleHelper,我从网上找了一个比较全的OracleHelper类,缺点是查询的时候返回DataSet,数据增删改要写很多代码(当 ...
- 『片段』OracleHelper (支持 多条SQL语句)
C# 调用 Oracle 是如此尴尬 >System.Data.OracleClient.dll —— .Net 自带的 已经 过时作废. >要链接 Oracle 服务器,必须在 本机安装 ...
- OracleHelper
/// <summary> /// OracleServer数据库访问的通用工具类 /// </summary> public abstract class OracleHel ...
- OracleHelper(for produce)
OracleHelper中,有一个用存储过程实现的Insert方法. 然后我把执行存储过程的方法 封装成了可以执行任何存储过程,参数是 存储过程名称 以及存错过程中的传入.传出参数 using Ora ...
随机推荐
- 2016_NENU_CS_3
贴一下比赛的代码, 其中 I 题代码源于final大神 ok_again http://acm.hust.edu.cn/vjudge/contest/127444#overview I /***** ...
- python学习笔记六——堆栈和队列
4.2.3 列表的查找.排序.反转 list列表可以进行添加.删除操作,此外List列表还提供了查找元素的方法.list列表的查找提供了两种方式,一种是使用index方法返回元素在列表中的位置,另一种 ...
- MySQL分区管理
以下是我看MySQL官方文档的时候整理的笔记,仅作参考保留. RANGE,LIST分区管理 1:为未分区表创建分区 ; 2:删除某个分区的数据 ALTER TABLE tr DROP PARTITIO ...
- override overload reintroduce的区别(delphi)
1.override overload reintroduce的中文叫法是什么? override:覆盖:overload:重载:Reintroduce:重定义 2.在子类中override或ov ...
- C从源码到运行发生了哪些事
一个C/C++程序从源代码到可执行程序主要经历了四个阶段: ①预处理.包括展开宏.处理#include,#if,#ifdef等指令.删除注释.还有一些其他操作.相关命令:gcc -E或cpp ②编译. ...
- std::shared_ptr 和普通指针的转换
相互转化见示例 struct test { int num; string name; }; test* pTest = new test(); std::shared_ptr<test> ...
- ansible系列3-pyYAML
规则一:缩进 yaml使用一个固定的缩进风格表示数据层结构关系,Saltstack需要每个缩进级别由两个空格组成.一定不能使用tab键 注意:编写yaml文件,就忘记键盘有tab 规则二:冒号 CMD ...
- Sql 重置自动增长列
Sql 重置自动增长列: dbcc checkident(表名, reseed, 0) 使用的情况,一般出现在主外键关联表,导致无法 truncate 只能delete的情况. 此时我们可能会需要重置 ...
- 有源汇有上下界最小流 DInic + 各种优化 模板
例题:loj117 : https://loj.ac/problem/117 //其实就是判断可行流后倒着求一遍最大流 #include <iostream> #include <c ...
- java常见面试题及答案
java常见面试题及答案 来源 https://blog.csdn.net/hsk256/article/details/49052293 来源 https://blog.csdn.net/hsk25 ...