1. using System;
  2. using System.Collections.Generic;
  3. using System.Data;
  4. using System.Data.SqlClient;
  5. using System.Linq;
  6. using System.Text;
  7. using System.Threading.Tasks;
  8.  
  9. namespace H.DAL
  10. {
  11. /// <summary>
  12. /// 数据库操作帮助类
  13. /// 此段基础代码为SQLServer数据库帮助类
  14. /// 如需操作MySQL
  15. /// 1.将代码中Sql改为MySql
  16. /// 2.添加MySql.Data.dll引用(可通过官网或NuGet)
  17. /// 3.using System.Data.SqlClient;替换为using MySql.Data.MySqlClient;
  18. /// </summary>
  19. public class SQLHelper
  20. {
  21. /// <summary>
  22. /// 数据库连接字符串
  23. /// </summary>
  24. private static string connectionStr =
           System.Configuration.ConfigurationManager.ConnectionStrings["dbConnection"].ConnectionString;
  25. public SQLHelper() { }
  26. public SQLHelper(string connectionStr)
  27. {
  28. SQLHelper.connectionStr = connectionStr;
  29. }
  30. /// <summary>
  31. /// 得到连接对象
  32. /// </summary>
  33. /// <returns></returns>
  34. public static SqlConnection GetConn()
  35. {
  36. SqlConnection sqlconn = null;
  37. sqlconn = new SqlConnection(connectionStr);
  38. return sqlconn;
  39. }
  40.  
  41. /// <summary>
  42. /// 查询操作
  43. /// </summary>
  44. /// <param name="sql"></param>
  45. /// <returns></returns>
  46. public static DataTable GetDataTable(string sql, params SqlParameter[] sp)
  47. {
  48. using (SqlConnection conn = GetConn())
  49. {
  50. conn.Open();
  51. using (SqlDataAdapter sda = new SqlDataAdapter(sql, conn))
  52. {
  53. sda.SelectCommand.Parameters.AddRange(sp);
  54. DataTable dt = new DataTable();
  55. sda.Fill(dt);
  56. return dt;
  57. }
  58. }
  59. }
  60. /// <summary>
  61. /// 增删改操作
  62. /// </summary>
  63. /// <param name="sql">sql语句</param>
  64. /// <returns>执行后的条数</returns>
  65. public static int ExecuteNonQuery(string sql, params SqlParameter[] sp)
  66. {
  67. using (SqlConnection conn = GetConn())
  68. {
  69. conn.Open();
  70. using (SqlCommand cmd = new SqlCommand(sql, conn))
  71. {
  72. cmd.Parameters.AddRange(sp);
  73. int i = cmd.ExecuteNonQuery();
  74. return i;
  75. }
  76. }
  77.  
  78. }
  79.  
  80. /// <summary>
  81. /// 执行一条SQL语句,返回首行首列
  82. /// </summary>
  83. /// <param name="sql">sql语句</param>
  84. /// <returns>首行首列</returns>
  85. public static object ExecuteScalar(string sql, params SqlParameter[] sp)
  86. {
  87. using (SqlConnection conn = GetConn())
  88. {
  89. conn.Open();
  90. using (SqlCommand cmd = new SqlCommand(sql, conn))
  91. {
  92. cmd.Parameters.AddRange(sp);
  93. return cmd.ExecuteScalar();
  94. }
  95. }
  96. }
  97. }
  98. }

1.读取微软配置文件使用的System.Configuration.ConfigurationManager,需要添加引用

2.配置文件中需增加数据库连接节点,类似如下

  1. <?xml version="1.0" encoding="utf-8" ?>
  2. <configuration>
  3. <connectionStrings>
  4. <add name="dbConnection" connectionString="server=.;database=数据库名称;uid=用户名;pwd=密码;"/>
  5. </connectionStrings>
  6. </configuration>

SQLHelper简单版(基础版)的更多相关文章

  1. 分享:计算机图形学期末作业!!利用WebGL的第三方库three.js写一个简单的网页版“我的世界小游戏”

    这几天一直在忙着期末考试,所以一直没有更新我的博客,今天刚把我的期末作业完成了,心情澎湃,所以晚上不管怎么样,我也要写一篇博客纪念一下我上课都没有听,还是通过强大的度娘完成了我的作业的经历.(当然作业 ...

  2. FineUIPro/Mvc/Core v5.4.0即将发布(Core基础版,新功能列表)!

    FineUIPro/Mvc/Core v5.4.0 即将于 2019-03-04 发布,目前官网示例已更新,先睹为快:http://pro.fineui.com/http://mvc.fineui.c ...

  3. H5活动产品设计指南基础版

    本文来自 网易云社区 . H5一般页面不会很多,看似简单,实际上会有很多细节需要注意,我自己在做过了几个H5之后,发现了一些常犯的问题,做了小结,希望给新开始做H5的产品相关的同学提供一些帮助.  首 ...

  4. Miner3D Basic基础版

    ——强大的数据可视化软件 数据分析并不很复杂,Miner3D Basic基础版首先使用简单的方法,创造了强劲的图形驱动的数据处理模型,然后通过一个完整的视图为基本的交互环境,对基本数据进行分析,并通过 ...

  5. 【基础版限时免费】致敬WebForms,ASP.NET Core也能这么玩!

    ASP.NET WebForms ASP.NET WebForms 随着微软 2000 年的 .Net Framework 一起发布,至今也将近 20 年的时间.相信很多人和我一样,对 WebForm ...

  6. J20航模遥控器开源项目系列教程(一)制作教程 | 基础版V1.0发布,从0到1

    我们的开源宗旨:自由 协调 开放 合作 共享 拥抱开源,丰富国内开源生态,开展多人运动,欢迎加入我们哈~ 和一群志同道合的人,做自己所热爱的事! 项目开源地址:https://github.com/C ...

  7. python tkinter实现俄罗斯方块 基础版

    本项目最终效果见本人b站投稿av81480858 简介部分 本项目最终代码已上传github: https://github.com/BigShuang/Tetris 的1_BASIC文件夹 .其中1 ...

  8. 渗透测试工具BurpSuite做网站的安全测试(基础版)

    渗透测试工具BurpSuite做网站的安全测试(基础版) 版权声明:本文为博主原创文章,未经博主允许不得转载. 学习网址: https://t0data.gitbooks.io/burpsuite/c ...

  9. linux发行版基础目录

    linux发行版基础目录 linux 基础目录 linux基础目录 目录 作用 / 根目录,起源 /boot linux引导启动目录 /lib 库目录 /bin 常用内部命令 /sbin 常用内部管理 ...

随机推荐

  1. Myeclipse普通工程转为Maven工程

    在SVN导出的Maven项目,或以前不是用Maven管理的项目想要转换成Maven项目,但Myeclipse中右键Configure 找不到(eclipse可行)Convert to maven pr ...

  2. 删除字符串中多余的空白字符和空行(C语言实现)

    要求:处理一个字符串,删除字符串中多余的空格.水平制表符和空行,并满足下列要求: (1)对原字符串只能进行一次扫描.(2)不允许申请新的空间.(3)处理后的字符串的首尾不能有空格.制表符和空行.(4) ...

  3. MySQLdb的安装

    第一步:下载安装介质 https://pypi.python.org/pypi/MySQL-python 注意虽然模块名叫MySQLdb但是MySQL-python指的就是MySQLdb 第二步:安装 ...

  4. MySQL中用decimal的原因

    原因:float保存的值有可能是这个值的近似值,而不是这个值的真实值.如 0.1在二进制中是没有办法保存真实值的. 下面是例子: 第一步:建表: create table t2(x float,y d ...

  5. linux关闭防火墙方法

    在关闭防火墙之前需要查看防火墙的状态,可以使用service iptables status命令来查看,确定防火墙是否开启再来进行关闭操作. 如果想临时开启防火墙使用命令service iptable ...

  6. Delphi在StatusBar上绘制ProgressBar

    首先,在TForm的私有域,也就是private下设置两个变量ProgressBar.ProgressBarRect,其中ProgressBar为 TProgressBar类型,ProgressBar ...

  7. Qt 的线程与事件循环——可打印threadid进行观察槽函数到底是在哪个线程里执行,学习moveToThread的使用)

    周末天冷,索性把电脑抱到床上上网,这几天看了 dbzhang800 博客关于 Qt 事件循环的几篇 Blog,发现自己对 Qt 的事件循环有不少误解.从来只看到现象,这次借 dbzhang800 的博 ...

  8. Puppet的执行过程

    图1 Puppet工作流程 1. 客户端Puppetd向Master发起认证请求,或使用带签名的证书. 2. Master告诉Client你是合法的. 3. 客户端Puppetd调用Facter,Fa ...

  9. ZooKeeper源码阅读(二):客户端

    源代码: http://svn.apache.org/repos/asf/zookeeper/trunk/ 导入eclipse: 在包含build.xml目录下执行ant eclipse将产生.cla ...

  10. objective-c 关键字和概念

    @ 看到这个关键字,我们就应该想到,这是Object-C对C语言的扩展,例如@interface XXX. @interface 声明类 @implementation 实现类 @protocol 声 ...