为什么80%的码农都做不了架构师?>>>   

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
using System.Data;
namespace GameStatistics
{
    /// <summary>
    /// 数据库操作类
    /// </summary>
    class SqlHelp
    {
        private static SqlConnection connection;
        #region 1.数据库连接字符串
        /// <summary>
        /// 连接数据库
        /// </summary>
        public static SqlConnection Connection
        {
            get
            {
                //获取连接字符串
                string connString = @"Data Source=D1\SQL2008R2SP2;Initial Catalog=GameStatistics;User ID=sa;Password=123456";
                if (connection == null)
                {
                    connection = new SqlConnection(connString);
                    connection.Open();
                }
                else if (connection.State == System.Data.ConnectionState.Closed)
                {
                    connection.Open();
                }
                else if (connection.State == System.Data.ConnectionState.Broken)
                {
                    connection.Close();
                    connection.Open();
                }
                return connection;
            }
        }
        #endregion
        #region 2.执行查询,并返回查询所返回的结果集中第一行的第一列。忽略其他列或行
        /// <summary>
        /// 执行查询,并返回查询所返回的结果集中第一行的第一列。忽略其他列或行,返回受影响的行数
        /// </summary>
        /// <param name="sqlString">SQL查询语句</param>
        /// <param name="commType">指定如何解释命令字符串</param>
        /// <param name="parameters">表示 System.Data.SqlClient.SqlCommand 的参数</param>
        /// <returns>受影响的行数</returns>
        public static int ExecuteScalar(string sqlString, CommandType commType, params SqlParameter[] parameters)
        {
            SqlCommand command = new SqlCommand(sqlString, Connection);
            command.Parameters.AddRange(parameters);
            return (int)command.ExecuteScalar();
        }
        #endregion
        #region 3.对连接执行 Transact-SQL语句并返回受影响的行数
        /// <summary>
        /// 对连接执行 Transact-SQL语句并返回受影响的行数,返回受影响的行数
        /// </summary>
        /// <param name="commText">SQL查询语句</param>
        /// <param name="commType">指定如何解释命令字符串</param>
        /// <param name="parameters">表示 System.Data.SqlClient.SqlCommand 的参数</param>
        /// <returns>受影响的行数</returns>
        public static int ExecuteCommand(string commText, CommandType commType, params SqlParameter[] parameters)
        {
            SqlCommand command = new SqlCommand(commText, Connection);
            command.Parameters.AddRange(parameters);
            return command.ExecuteNonQuery();
        }
        #endregion
        #region 4.根据查询语句返回一个DataTable
        /// <summary>
        /// 根据查询语句返回一个DataTable
        /// </summary>
        /// <param name="commText">查询语句</param>
        /// <param name="commType">命令字符串类型</param>
        /// <returns>Table</returns>
        public static DataTable GetDataTable(string commText, CommandType commType)
        {
            SqlCommand command = new SqlCommand(commText, Connection);
            SqlDataAdapter da = new SqlDataAdapter(command);
            DataSet ds = new DataSet();
            da.Fill(ds, "table");
            return ds.Tables["table"];
        }
        #endregion
        #region 5.根据查询语句返回一个DataView
        /// <summary>
        /// 根据查询语句返回一个DataView
        /// </summary>
        /// <param name="commText">查询语句</param>
        /// <param name="commType">命令字符串类型</param>
        /// <returns>DataView</returns>
        public static DataView GetDataView(string commText, CommandType commType)
        {
            SqlCommand command = new SqlCommand(commText, Connection);
            SqlDataAdapter da = new SqlDataAdapter(command);
            DataSet ds = new DataSet();
            da.Fill(ds, "table");
            return ds.Tables["table"].DefaultView;
        }
        #endregion
        #region 6.根据查询语句返回一个datatable
        /// <summary>
        /// 根据查询语句返回一个datatable
        /// </summary>
        /// <param name="commText">连接字符串</param>
        /// <param name="commType">命令字符串类型</param>
        /// <param name="parameters">返回一组映射</param>
        /// <returns>datatable</returns>
        public static DataTable GetDataTable(string commText, CommandType commType, params SqlParameter[] parameters)
        {
            DataSet ds = new DataSet();
            SqlCommand command = new SqlCommand(commText, Connection);
            command.Parameters.AddRange(parameters);
            SqlDataAdapter adapter = new SqlDataAdapter(command);
            adapter.Fill(ds, "myTable");
            return ds.Tables["myTable"];
        }
        #endregion
}
}

转载于:https://my.oschina.net/dongri/blog/610893

SQL操作类详细注释版相关推荐

  1. SQL习题集_详细注释版答案

    目录 一.准备工作 二.MySQL语句执行顺序 三.题目 四.附录 一.准备工作 1 环境 MySQL 5.7.28 + Ubuntu18.04.4 2 登录MySQL -- Terminal下输入 ...

  2. WinAPI入门: 第一个标准Win32窗口程序 [改进详细注释版]

    WinAPI入门: 第一个标准Win32窗口程序 下载链接: 若想立即看到本程序的运行结果,可点击EXE文件的免费下载链接; HelloWin_v1.sfx.exe;–带语音和背景音乐; 相关链接: ...

  3. 详细注释版的ABAQUS COH2D4单元批量添加Python脚本

    详细注释版的ABAQUS COH2D4单元批量添加Python脚本 ABAQUS Cohesive单元批量添加脚本程序-附详细注释版: #本程序只适用于二维问题,对于三维COH3D8的批量嵌入只需要转 ...

  4. 经典剪枝算法的例题——Sticks详细注释版

    这题听说是道十分经典的剪枝算的题目,不要问我剪枝是什么,我也不知道,反正我只知道用到了深度搜索 我参考了好多资料才悟懂,然后我发现网上的那些大神原理讲的很明白,但代码没多少注释,看的很懵X,于是我抄起 ...

  5. CNN经典网络模型(二):AlexNet简介及代码实现(PyTorch超详细注释版)

    目录 一.开发背景 二.网络结构 三.模型特点 四.代码实现 1. model.py 2. train.py 3. predict.py 4. spilit_data.py 五.参考内容 一.开发背景 ...

  6. CNN经典网络模型(四):GoogLeNet简介及代码实现(PyTorch超详细注释版)

    目录 一.开发背景 二.网络结构 三.模型特点 四.代码实现 1. model.py 2. train.py 3. predict.py 4. spilit_data.py 五.参考内容 一.开发背景 ...

  7. .NET字符串操作类StringHelper (C#版)

    using System;    using System.Collections.Generic;    using System.Linq;    using System.Text;    us ...

  8. ArcSDE10.1配置Oracle 监听器来使用SQL操作ST_Geometry(个人改动版)

    发了两天的时间来解决配置Oracle 监听器来使用SQL操作ST_Geometry的配置,网上搜索一大片,结果真正找到的只有方法可用,下面把这个方法我个人在总结下. ArcSDE10.1配置Oracl ...

  9. C++ STL 容器的合并、求差集、交集等操作实例 含详细注释版

    //本实例程序演示容器之间合并.求差集.求交集 //merge.inplace_merge.set_union.set_difference.set_intersection. #include &l ...

最新文章

  1. 面试现场:小伙伴美团一面的分享和分析「含解答」
  2. 一本书带你入门商业数据科学
  3. python报错:UnicodeDecodeError: ‘ascii‘ codec can‘t decode byte 0xe0 in position 0: ordinal not in rang
  4. opencv实现正交匹配追踪算法OMP
  5. GNU make 与 override指令
  6. SAP Spartacus 里的 .release-it.json 文件
  7. Container View Controller
  8. adb工具箱_安卓福音,史上最强搞机工具箱,一键修手机
  9. 程序相关概念及OS Linux发行版
  10. [公告]积分算法问题改正
  11. cocos builder中使用九宫格
  12. 怎么设置台式计算机密码忘了,台式电脑忘记开机密码怎么办
  13. Win7怎么设置工作组?Win7电脑设置工作组的方法
  14. 怎么计算中国股市分红最高的股票?什么是股息率?--使用python和tushare获取分红最高的股票
  15. PhpSpreadsheet中文文档 | 基础Spreadsheet开发使用示例
  16. word中代码高亮加行号
  17. 新买的电脑,设置电脑
  18. RuntimeError: Found dtype Long but expected Float
  19. 3.Spring Boot使用Apache Curator实现leader选举「第四章 ZooKeeper Curator应用场景实战」「架构之路ZooKeeper理论和实战」
  20. [HNOI 2014] 米特运输

热门文章

  1. python文件输出-python 文件的输入输出
  2. python中文编辑器推荐-推荐10款最好的Python开发编辑器
  3. python掌握程度怎么判断-Python数据分析路上,温故而知新
  4. python系统-python实现用户登录系统
  5. python处理数据的优势-Python处理excel的优点
  6. python中是干嘛的-python中def是做什么的
  7. python使用字典格式化字符串-python实现字符串和字典的转换
  8. LeetCode Permutations II(有重复元素的全排列)
  9. visual assist破解
  10. 【论文笔记】Sparse filtering