//数据库连接字符串
public static string connectStr = @"server=.;database=test;uid=sa;pwd=123456;";

/// <summary>
/// 增删改操作类
/// </summary>
/// <param name="sql">执行的sql</param>
/// <returns></returns>
public static int ExecuteSql(string sql)
{
try
{
using (SqlConnection con = new SqlConnection(connectStr))
{
con.Open();
using (SqlCommand cmd = new SqlCommand(sql, con))
{
return cmd.ExecuteNonQuery();
}
}

}
catch (Exception ex)
{

throw ex;
}
}

/// <summary>
/// 查询sql
/// </summary>
/// <param name="sql">查询语句sql</param>
/// <returns></returns>
public static DataSet Query(string sql)
{
DataSet ds = new DataSet();
try
{
using (SqlConnection con = new SqlConnection(connectStr))
{
con.Open();
using (SqlDataAdapter cmd = new SqlDataAdapter(sql, con))
{
cmd.Fill(ds);
return ds;
}
}
}
catch (Exception)
{

throw;
}
}

/// <summary>
/// 执行增删改查存储过程
/// </summary>
/// <param name="ProcName">存储过程名</param>
/// <param name="parameter">存储过程参数</param>
/// <returns></returns>
public static int ExecuteProc(string ProcName, SqlParameter[] parameter)
{
try
{
using (SqlConnection con = new SqlConnection(connectStr))
{
con.Open();
using (SqlCommand cmd = new SqlCommand())
{
cmd.CommandText = ProcName;
cmd.CommandType = CommandType.StoredProcedure;
cmd.Connection = con;

for (int i = 0; i < parameter.Length; i++)
{
cmd.Parameters.Add(parameter[i]);
}

return cmd.ExecuteNonQuery();
}
}
}
catch (Exception)
{

throw;
}
}
/// <summary>
/// 执行查询的存储过程
/// </summary>
/// <param name="ProcName">存储过程名</param>
/// <param name="parameter">存储过程参数</param>
/// <returns></returns>
public static DataSet ExecuteProcQuery(string ProcName, SqlParameter[] parameter)
{
DataSet ds = new DataSet();
try
{
using (SqlConnection con = new SqlConnection(connectStr))
{
con.Open();
using (SqlCommand cmd = new SqlCommand())
{
cmd.CommandText = ProcName;
cmd.CommandType = CommandType.StoredProcedure;
cmd.Connection = con;

for (int i = 0; i < parameter.Length; i++)
{
cmd.Parameters.Add(parameter[i]);
}

SqlDataAdapter dt = new SqlDataAdapter(cmd);
dt.Fill(ds);
return ds;
}
}
}
catch (Exception)
{

throw;
}
}
/// <summary>
/// 执行事务
/// </summary>
/// <param name="sqls">执行的所有sql语句</param>
/// <returns></returns>
public static int ExecuteTranction(string sqls)
{

try
{
using (SqlConnection con = new SqlConnection(connectStr))
{
con.Open();

using (SqlTransaction transaction = con.BeginTransaction())
{

using (SqlCommand cmd = new SqlCommand())
{
try
{

cmd.CommandText = sqls;
cmd.Connection = con;
cmd.Transaction = transaction;
int i = cmd.ExecuteNonQuery();
transaction.Commit();
return i;
}
catch (Exception)
{
transaction.Rollback();

return 0;
}
}
}
}
}
catch (Exception)
{
return 0;
}
}

C# 连接SQLSERVER数据库常用操作类的更多相关文章

  1. Jmeter连接SqlServer数据库并操作

    jmeter支撑多种数据库,且均需要下载对应的驱动包,如下以SqlServer为例作为讲解,其他数据库类似. 1.下载jdbc驱动(注意下载对应版本),并放在jmeter的lib目录下,重启jmete ...

  2. sqlServer数据库常用连接字符串

    sqlServer   数据库常用连接字符串 用户名和密码验证的方式去连接到数据库服务器 <add name="conStr" connectionString=" ...

  3. jsp连接sqlServer数据库教程

    一.首先讲下我用的工具版本以供参考: jar包:jtds1.3.1.jar  下载地址:点击进入 数据库:SQL Server2012 服务器:Tomcat8.0   下载地址:点击进入 开发IDE工 ...

  4. asp.net 连接sqlserver数据库

    在asp.net中连接sqlserver数据库之前,首先得确保正常安装了sqlserver2008,同时有数据库. 在项目中添加一个类DB,用来专门负责执行对数据库的增删改查.在添加的过程中会弹出下面 ...

  5. JavaWeb连接SQLServer数据库并完成一个登录界面及其功能设计。

    一.JDBC连接SQLserver数据库的步骤: 1.下载SQLserver的JDBC驱动文件——Microsoft JDBC Driver 4.0 for SQL Server 2.例如下载得到的文 ...

  6. php支持连接sqlserver数据库

    php支持连接sqlserver数据库 1.软件配置 Win7 64 +wampserver2.2d-x32+SQL Server 2008 R2数据库,wamp2.2中的php版本是5.3.10. ...

  7. C#访问SQLServer数据库访问帮助类

    SQLServer数据库访问帮助类 这里有一个Mysql帮助类的使用例子可以参考(大同小异) 写了一个Mysql的例子,SQLServer的差不多,一样的 C#简单三层结构设计UI.BLL.DAL 1 ...

  8. jsp连接sqlServer数据库教程、jsp连接sqlServer数据库报ClassNotFoundException异常

    jsp连接sqlServer数据库教程: 首先讲下我用的工具版本以供参考: jar包:jtds1.3.1.jar  下载地址:点击进入 数据库:SQL Server2012 服务器:Tomcat8.0 ...

  9. django 中连接mysql数据库的操作步骤

    django中连接mysql数据库的操作步骤: 1 settings配置文件中 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mys ...

  10. DBA必备:MySQL数据库常用操作和技巧

    DBA必备:MySQL数据库常用操作和技巧 2011-02-25 15:31 kaduo it168 字号:T | T MySQL数据库可以说是DBA们最常见和常用的数据库之一,为了方便大家使用,老M ...

随机推荐

  1. [OpenCV实战]24 使用OpenCV进行曝光融合

    目录 1 什么是曝光融合 2 曝光融合的原理 3 代码与结果 4 参考 本教程中,我们将了解使用OpenCV的Exposure Fusion(曝光融合). 1 什么是曝光融合 曝光融合是一种将使用不同 ...

  2. Docker 搭建 Wordpress 个人博客

    Docker安装 更新软件库(可选),将所用到的yum软件更新到最新 yum -y update docker一键安装命令: curl -fsSL https://get.docker.com | b ...

  3. 使用 Link Cut Tree 维护最小生成树

    简介 本文将简单介绍如何使用 Link Cut Tree 维护动态图最小生成树. 思路 最小生成树的性质:一个基环树的最小生成树,为将环上边权最大的边删除后所组成的树. Proof:如果删除环上的其他 ...

  4. 踩坑纪实----tomcat部署前端服务器不能访问中文文件夹或中文文件名问题

    修改tomcat的server.xml文件(解决含有中文的文件.图片的不能下载.显示的问题): 找到下列配置信息在xml文件中的位置,添加黑体字部分的参数即可(disableUploadTimeout ...

  5. mongdb遭遇勒索,用备份进行数据恢复

    mongdb遭遇勒索,用备份进行数据恢复 1.背景: 某台MongoDB服务器,没有配置用户名密码,放到公网不到一天,遭到删库勒索 All your data is a backed up. You ...

  6. RAM算法原理

    1 应用场景 信道的不对称性和信道的高波动是移动环境中无线信道的两个显著特征.因此,当在车辆网络等移动环境中使用IEEE 802.11设备时,有一个能够处理这些问题的有效速率自适应方案至关重要.RAM ...

  7. 深入解读.NET MAUI音乐播放器项目(一):概述与架构

    系列文章将分步解读音乐播放器核心业务及代码: 深入解读.NET MAUI音乐播放器项目(一):概述与架构 深入解读.NET MAUI音乐播放器项目(二):播放内核 深入解读.NET MAUI音乐播放器 ...

  8. Vue29 $nextTick

    https://www.jianshu.com/p/f1906903b609 1 介绍 Vue 在修改数据之后,视图不会立即更新,而是等待同一事件循环中的所有数据变化完成之后,再统一进行视图更新.而 ...

  9. 与ChatGPT关于测试问题的对话

    1测试人员创造什么价值? 测试人员在软件开发生命周期中扮演着非常重要的角色,他们的主要职责是确保软件在发布前达到高质量标准.以下是测试人员为软件开发和业务提供的价值: 1.缺陷检测和修复:测试人员的主 ...

  10. 0x06_自制操作系统My-OS,IDT,GDT,PIC初始化,实现键盘中断

    把class03改成class04 IDT,GDT,PIC 我来介绍什么是IDT和GDT,PIC,怎么实现键盘中断 GDT全局描述表在16位CPU用不到,到了32位CPU要用. 16位CPU实模式用基 ...