一、正常调用

  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. 【VS开发】【C/C++开发】printf缓冲区刷新

    printf之缓冲区小结: 今天调试程序,发现了一个有趣的现象,printf函数没有按照预期的结果输出重复的字符串,单步调试显示代码的确走到了打印屏幕的分支,没有显示不由得想到了是不是缓冲区去刷新的问 ...

  2. 【VS开发】【计算机视觉】OpenCV读写xml文件《C++版本》

    OpenCV FileStorage类读写XML/YML文件 在OpenCV程序中,需要保存中间结果的时候常常会使用.xml / .yml文件,opencv2.0之前都是使用C风格的代码,当时读写XM ...

  3. Macaca环境搭建(四)----mac系统macaca安装

    一.安装Homebrew 命令:/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/insta ...

  4. 查询list转化为tree的两种方式及排序

    方式一,数据库查询tree; MyBatis collection 集合 MyBatis 是数据持久层框架,支持定制化 SQL.存储过程以及高级映射.尤其强大在于它的映射语句,比如高级映射中的 col ...

  5. PHPRedis教程之geo

    前言 支持 GEO 系列命令的 Redis 版本从 3.2.0 起开始才可以使用,所以之前版本就不要想了. 函数列表 geoadd - 将指定的地理空间项(纬度,经度,名称)添加到指定的键, 数据作为 ...

  6. PyQt5创建多线程

    参阅: https://blog.csdn.net/chengmo123/article/details/96477103 https://www.cnblogs.com/zhuminghui/p/9 ...

  7. 进阶Java编程(5)基础类库

    Java基础类库 1,StringBuffer类 String类是在所有项目开发之中一定会使用到的一个功能类,并且这个类拥有如下的特点: ①每一个字符串的常量都属于一个String类的匿名对象,并且不 ...

  8. 执行sql语句,不依靠实体 获取string值

     IList<string> list2 = Session.CreateSQLQuery(sql.ToString()).List<string>();

  9. unity 打包Error:WebException: The remote server returned an error: (403) Forbidden.

    記一下在ios上打包出錯: UnityEditor.BuildPlayerWindow+BuildMethodException: 2 errors at UnityEditor.BuildPlaye ...

  10. vue入门:(模板语法与指令)

    vuejs使用及HTML的模板语法,可以实现声明式将DOM绑定至底层VUE实例的数据.通过模板语法将数据渲染进DOM的系统,结合响应系统,在应用状态改变时,Vue能够计算出重新渲染组件的最小代价并应用 ...