一、正常调用

  1、创建DBHelper帮助类

  2、复制以下代码到类中

  

using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Web; namespace 对应的命名空间
{
public class DBHelper
{
//连接数据库
public static string connStr = "Data Source=.;Initial Catalog=数据库名称;Integrated Security=True";
public static SqlConnection cnn = new SqlConnection(connStr); /// <summary>
/// 执行多条SQL语句,实现数据库事务
/// </summary>
/// <param name="SQLStringList"></param>
/// <returns></returns>
public static int ExecuteSqlTran(List<string> SQLStringList)
{
using (SqlConnection conn = new SqlConnection(connStr))
{
conn.Open();
SqlCommand command = new SqlCommand();
command.Connection = conn;
SqlTransaction tx = conn.BeginTransaction();
command.Transaction = tx;
try
{
int count = ;
for (int n = ; n < SQLStringList.Count; n++)
{
string strsql = SQLStringList[n];
if (strsql.Trim().Length > )
{
command.CommandText = strsql;
count += command.ExecuteNonQuery();
}
}
tx.Commit();
return count;
}
catch
{
tx.Rollback();
return ;
}
}
} /// <summary>
/// 执行增删改的操作
/// </summary>
/// <param name="sql">sql命令</param>
/// <returns>受影响的行数</returns>
public static int ExecuteNonQuery(string sql)
{
Open();
SqlCommand command = new SqlCommand(sql, cnn);
int result = command.ExecuteNonQuery();
cnn.Close();
return result;
}
/// <summary>
/// 查询单个值
/// </summary>
/// <param name="sql"></param>
/// <returns></returns>
public static object ExecuteScalar(string sql)
{
Open();
SqlCommand command = new SqlCommand(sql, cnn);
object result = command.ExecuteScalar();
cnn.Close();
return result;
}
/// <summary>
/// 返回数据表
/// </summary>
/// <param name="sql"></param>
/// <returns></returns>
public static DataTable GetDataTable(string sql)
{
SqlDataAdapter adapter = new SqlDataAdapter(sql, cnn);
DataSet ds = new DataSet();
adapter.Fill(ds);
return ds.Tables[];
}
/// <summary>
/// 返回DataReader对象,使用结束后,勿忘关闭DataReader与数据库
/// </summary>
/// <param name="sql"></param>
/// <returns></returns>
public static SqlDataReader GetDataReader(string sql)
{
Open();
SqlCommand command = new SqlCommand(sql, cnn);
return command.ExecuteReader();
}
/// <summary>
/// 打开数据库
/// </summary>
public static void Open()
{
if (cnn.State==ConnectionState.Broken||cnn.State==ConnectionState.Open)
{
cnn.Close();
}
cnn.Open();
} /// <summary>
/// 打开数据库
/// </summary>
public static void Close()
{
cnn.Close();
}
}
}

  3、修改对应的命名空间和数据库名称

  4、成功调用

二、存储过程调用

  1、创建DBHelperProc帮助类

  2、复制以下代码到类中

  

using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Web; namespace 命名空间
{
public class DBHelper
{
public static string connStr = "Data Source=.;Initial Catalog=数据库名称;Integrated Security=True";
public static SqlConnection cnn = new SqlConnection(connStr); /// <summary>
/// 执行增删改的操作
/// </summary>
/// <param name="sql">sql命令</param>
/// <returns>受影响的行数</returns>
public static int ExecuteNonQuery(string sql)
{
Open();
SqlCommand command = new SqlCommand(sql, cnn);
int result = command.ExecuteNonQuery();
cnn.Close();
return result;
}
/// <summary>
/// 查询单个值
/// </summary>
/// <param name="sql"></param>
/// <returns></returns>
public static object ExecuteScalar(string sql)
{
Open();
SqlCommand command = new SqlCommand(sql, cnn);
object result = command.ExecuteScalar();
cnn.Close();
return result;
}
/// <summary>
/// 返回数据表
/// </summary>
/// <param name="sql"></param>
/// <returns></returns>
public static DataTable GetDataTable(string sql)
{
SqlDataAdapter adapter = new SqlDataAdapter(sql, cnn);
DataSet ds = new DataSet();
adapter.Fill(ds);
return ds.Tables[];
}
/// <summary>
/// 返回DataReader对象,使用结束后,勿忘关闭DataReader与数据库
/// </summary>
/// <param name="sql"></param>
/// <returns></returns>
public static SqlDataReader GetDataReader(string sql)
{
Open();
SqlCommand command = new SqlCommand(sql, cnn);
return command.ExecuteReader();
}
/// <summary>
/// 打开数据库
/// </summary>
public static void Open()
{
if (cnn.State == ConnectionState.Broken || cnn.State == ConnectionState.Open)
{
cnn.Close();
}
cnn.Open();
} /// <summary>
/// 打开数据库
/// </summary>
public static void Close()
{
cnn.Close();
} /// <summary>
/// 使用存储过程查询数据结果
/// </summary>
/// <param name="sql"></param>
/// <param name="paras"></param>
/// <returns></returns>
public static DataTable GetDataTable(string procName, SqlParameter[] paras = null)
{
Open();
SqlCommand command = new SqlCommand(procName, cnn);
command.CommandType = CommandType.StoredProcedure; if (paras != null)
{
command.Parameters.AddRange(paras);
}
SqlDataAdapter adapter = new SqlDataAdapter(command);
DataSet ds = new DataSet();
adapter.Fill(ds);
Close();
return ds.Tables[];
} /// <summary>
/// 使用存储过程执行增删改
/// </summary>
/// <param name="sql"></param>
/// <param name="paras"></param>
/// <returns></returns>
public static int ExecuteNonQuery(string procName, SqlParameter[] paras)
{
Open();
SqlCommand command = new SqlCommand(procName, cnn);
command.CommandType = CommandType.StoredProcedure;
command.Parameters.AddRange(paras); int result = command.ExecuteNonQuery();
Close(); return result;
}
}
}

  3、修改对应的命名空间和数据库名称

  4、成功调用

C#工具:ASP.net 调用SQLserver帮助类的更多相关文章

  1. C#工具:ASP.net 调用MySQL 帮助类(包括存储过程调用)

    1.创建DbHelperMySQL类 2.复制代码到类中 using System; using System.Collections; using System.Collections.Specia ...

  2. 在ASP中调用DLL的方法

    .net的dll已经不是严格意义上的动态连接库了,而是一个类或者类库.它是不能直接在ASP.VB等其它的应用环境中使用的.   我们可以通过COM包装器(COM callable wrapper (C ...

  3. 一步一步搭框架(asp.netmvc+easyui+sqlserver)-03

    一步一步搭框架(asp.netmvc+easyui+sqlserver)-03 我们期望简洁的后台代码,如下: using System; using System.Collections.Gener ...

  4. 一步一步搭框架(asp.netmvc+easyui+sqlserver)-02

    一步一步搭框架(asp.netmvc+easyui+sqlserver)-02 我们期望简洁带前台代码,如下: <table id="dataGrid" class=&quo ...

  5. ASP.NET 的IP帮助类

    个人网站地址: https://www.lesg.cn/netdaima/net/2016-239.html ASP.NET 的IP帮助类 在Web开发中会出现需要调用客户IP的方法: 一般调用方法就 ...

  6. ASP.NET调用Web Service

    1.1.Web Service基本概念 Web Service也叫XML Web Service WebService是一种可以接收从Internet或者Intranet上的其它系统中传递过来的请求, ...

  7. cocos进阶教程(1)Lua调用自定义C++类和函数的最佳实践

    第一层:纯C环境下,把C函数注册进Lua环境 a.lua 文件 )) a.c 文件 #include <lua.h> #include <lualib.h> #include ...

  8. Cocos2d-x下Lua调用自定义C++类和函数的最佳实践[转]

    Cocos2d-x下Lua调用C++这事之所以看起来这么复杂.网上所有的文档都没讲清楚,是因为存在5个层面的知识点: 1.在纯C环境下,把C函数注册进Lua环境,理解Lua和C之间可以互相调用的本质 ...

  9. Entity Framework SqlFunctions 教你如何在EF调用sqlserver方法的函数存根

    今天算是研究了一天的SqlFunctions,请教了几个群的牛人,居然发现大伙对这个都比较陌生, 有的甚至直指EF中是不能调用sqlserver里的方法的. 因为之前搞过linq to sql 里面的 ...

随机推荐

  1. 看kubelet的日志 + Kubeadm安装Kubernetes环境

    1.通过journalctl看日志 journalctl -xeu kubelet > a参考:https://www.cnblogs.com/ericnie/p/7749588.html

  2. PTA (Advanced Level)1077.Kuchiguse

    The Japanese language is notorious for its sentence ending particles. Personal preference of such pa ...

  3. 【Python】【demo实验28】【练习实例】【递归函数练习】

    原题: 有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁.问第4个人岁数,他说比第3个人大2岁.问第三个人,又说比第2人大两岁.问第2个人,说比第一个人大两岁.最后问第一个人,他说是10岁.请 ...

  4. SQLSERVER2008 内存占用高的处理方式

    原文:SQLSERVER2008 内存占用高的处理方式 方法一: 方法二: 使用以下语句查找出什么语句占内存最高,针对占内存高的语句进行优化SELECT SS.SUM_EXECUTION_COUNT, ...

  5. position: sticky 防坑指南

    position: sticky 防坑指南:https://www.jianshu.com/p/e217905e8b87 今天在写小程序项目的时候碰到一个需求是要把轮播图下面的标签栏滑动到顶部后固定, ...

  6. Arthas查看Spring配置

    在开发过程经常有同学问:"我这个配置更新提交了,怎么样知道项目中是否已经更新使用新值?" 常用的方法是添加日志打印该值判断是否更新.今天我们用Arthas来实现项目中配置值实时读取 ...

  7. luogu P3959(2017noipTG D2T2

    luogu P3959(2017noipTG D2T2 不知道为什么,这两天见了好多伪装成图的dp题,这道也是. 最短路只有40分,实际上可以从数据范围n<=12看出来是状压dp. soluti ...

  8. linux常用终端命令(一)终端命令格式(二)文件和目录常用命令

    一.linux终端命令格式 1.终端命令格式 command  [-options]  [parameter] 说明: command :命令名,相应功能的英文单词或单词的缩写 [-options] ...

  9. 流程控制之 while 循环

    目录 流程控制之while while 条件循环语句 while contine while else while 循环的嵌套 流程控制之while while 条件循环语句 循环就是一个重复的过程 ...

  10. js变量浅拷贝 深拷贝

    js的变量分为简单数据类型和复杂数据类型(即引用类型). 简单数据类型在内存中占据着固定大小的空间,被保存在栈内存中,在简单数据类型中,当一个变量指向另一个变量时,只是创建了值的副本,两个变量只是占用 ...