将连接字符串放入配置文件中

1、添加一个“应用程序配置文件:app.config”

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<connectionStrings >
<add name ="connStr" connectionString ="Data source =.;Initial Catalog =hkdb;User ID=sa;Password =3309578qian"/>
</connectionStrings>
</configuration>

使用方法:

2、添加对system.configuration的引用

3、定义一个变量接受app.config中的连接字符串

string connStr = ConfigurationManager.ConnectionStrings["connStr"].ConnectionString;
using (SqlConnection conn=new SqlConnection (connStr ))
{
conn.Open();
}

SqlHelper类:封装ADO.net中重复的操作

ExcuteNonQuery方法:用于非查询sql语句(增删改)

        private static string connStr = ConfigurationManager.ConnectionStrings["connStr"].ConnectionString;

        public static int ExecuteNonQuery(string sql,params SqlParameter [] parameters)
{
using (SqlConnection conn = new SqlConnection(connStr))
{
conn.Open();
using (SqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = sql;
cmd.Parameters.AddRange(parameters);
return cmd.ExecuteNonQuery();
}
}
}

            //ExecuteNonQuery方法的使用
            int a = SqlHelper.ExecuteNonQuery("insert into YG_Department(DepartmentID,DepartmentName,SuperiorDepartmentID) values (@DepartmentID,@DepartmentName,@SuperiorDepartmentID);",
                new SqlParameter("@DepartmentID", txbDepartmentID.Text), new SqlParameter("@DepartmentName", txbDepartmentName.Text), new SqlParameter("@SuperiorDepartmentID", txbSuperiorDepartmentID.Text));
            MessageBox.Show(a + "行受影响");

ExcuteScalar方法:用于查询一行一列的sql语句

public static  object ExcuteScalar(string sql, params SqlParameter[] parameters)
{
using (SqlConnection conn = new SqlConnection(connStr ))
{
conn.Open();
using (SqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = sql;
cmd.Parameters.AddRange(parameters);
return cmd.ExecuteScalar();
}
}
}

DataTable方法:用于查询多行数据的sql语句,一般查询中数据量都不是很大,所以大多数时候用DateTable而不是ExecuteReader方法,

        public static DataTable  DataTable(string sql, params SqlParameter[] parameters)
{
using (SqlConnection conn = new SqlConnection(connStr))
{
conn.Open();
using (SqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = sql;
cmd.Parameters.AddRange(parameters);
DataSet dataset = new DataSet();
SqlDataAdapter adapter = new SqlDataAdapter(cmd);
adapter.Fill(dataset);
return dataset.Tables[0];
}
}
}

            //DataTable方法的使用
            DataTable table = SqlHelper.DataTable("select * from YG_Department where DepartmentID =@DepartmentID;",
                new SqlParameter("@DepartmentID", txbDepartmentID.Text));
            foreach (DataRow row in table.Rows)
            {
                string name = (string)row["DepartmentName"];
                MessageBox .Show (name);
            }

ADO.net基础学习总结(二)的更多相关文章

  1. AspectJ基础学习之二搭建环境(转载)

    AspectJ基础学习之二搭建环境(转载) 一.下载Aspectj以及AJDT 上一章已经列出了他的官方网站,自己上去download吧.AJDT是一个eclipse插件,开发aspectj必装,他可 ...

  2. 【笔记】MySQL的基础学习(二)

    [笔记]MySQL的基础学习(二) MySQL 老男孩  一 视图 视图其实就是给表起个别名 1.创建视图 格式:CREATE VIEW 视图名称 AS SQL语句 CREATE VIEW v1 AS ...

  3. opengl基础学习专题 (二) 点直线和多边形

    题外话 随着学习的增长,越来越觉得自己很水.关于上一篇博文中推荐用一个 学习opengl的 基于VS2015的 simplec框架.存在 一些问题. 1.这个框架基于VS 的Debug 模式下,没有考 ...

  4. JavaScript 基础学习(二)js 和 html 的结合方式

    第一种 使用一个标签 <script type="text/javascript"> js代码; </script> 第二种 使用 script 标签,引入 ...

  5. JavaScript 基础 学习 (二)

    JavaScript 基础 学习 节点属性 ​ 每一个节点都有自己的特点 ​ 这个节点属性就记录着属于自己节点的特点 1. nodeType(以一个数字来表示这个节点类型) ​ 语法:节点.nodeT ...

  6. ADO.NET基础学习 二(Command对象)

    ②command对象用来操作数据库.(三个重要的方法:ExecuteNonQuery(),ExecuteReader(),ExecuteScalar()) ⑴以update(改数据)为例,用到Exec ...

  7. Java基础学习笔记二十八 管家婆综合项目

    本项目为JAVA基础综合项目,主要包括: 熟练View层.Service层.Dao层之间的方法相互调用操作.熟练dbutils操作数据库表完成增删改查. 项目功能分析 查询账务 多条件组合查询账务 添 ...

  8. pytorch基础学习(二)

    在神经网络训练时,还涉及到一些tricks,如网络权重的初始化方法,优化器种类(权重更新),图片预处理等,继续填坑. 1. 神经网络初始化(Network Initialization ) 1.1 初 ...

  9. JS基础学习(二)

    昨天把网站上的基础知识看完了,下面是剩下的部分 第六节 JS Window浏览器对象模型 JavaScript全局对象,函数,变量均自动成为window对象的成员. 1.Window对象 1.获取浏览 ...

随机推荐

  1. MySQL学习笔记:MySQL: ERROR 1064(42000)

    ERROR 1064 : You have an error in your SQL syntax; check the manual that corresponds to your MySQL s ...

  2. linux下安装swftools工具

    swfTools是一种实用工具与Adobe Flash文件(swf文件)工作的集合.可以把(pdf/gif/png/jpeg/jpg/font/wav) 7种格式转换为swf文件.一般常用于文件在线浏 ...

  3. SQL内连接-外连接join,left join,right join,full join

    1.创建测试表test1及test2 SQL)); 表已创建. SQL)); 表已创建. ,'name1'); ,'name2'); ,'name3'); ,'name4'); ,'name5'); ...

  4. 解决ERROR 2006 (HY000): MySQL server has gone away

    刚把博客从百度云搬到腾讯云,发现文章少了几篇.当时在导入dump数据的时候,就曾经发现mysql提示: ERROR 2006 (HY000): MySQL server has gone away N ...

  5. fastclick.js介绍

    原文地址:http://www.uedsc.com/fastclick.html 用途:去掉移动端click事件的300ms的延迟. 延迟为什么存在   …在移动浏览器中,当你点击按钮的单击事件时,将 ...

  6. JSP基础学习(一)

    1.jsp和servlet是javaEE规范的两个基本成员,是java web开发的重要知识,jsp和servlet本质上是一样的,因此jsp最终必须编译成servlet才能运行,或者说jsp是生成s ...

  7. I - u Calculate e

    Description A simple mathematical formula for e is where n is allowed to go to infinity. This can ac ...

  8. [poj2762] Going from u to v or from v to u?(Kosaraju缩点+拓排)

    转载请注明出处: http://www.cnblogs.com/fraud/          ——by fraud     Going from u to v or from v to u? Tim ...

  9. JQuery validator扩展

    //validator 扩展 jQuery.validator.addMethod("mail", function(value, element, messages) { ret ...

  10. Ecstore中的微信支付怎么样配置

    要在Ecstore中开启微信支付,需要先在后台/应用中心中安装“移动商城”和“微信商城管理”这两个App移动商城App是ecstore的手机wap版,可在手机浏览器中实现商城的B2c购物功能.“微信商 ...