ADO.net基础学习总结(二)
将连接字符串放入配置文件中
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基础学习总结(二)的更多相关文章
- AspectJ基础学习之二搭建环境(转载)
AspectJ基础学习之二搭建环境(转载) 一.下载Aspectj以及AJDT 上一章已经列出了他的官方网站,自己上去download吧.AJDT是一个eclipse插件,开发aspectj必装,他可 ...
- 【笔记】MySQL的基础学习(二)
[笔记]MySQL的基础学习(二) MySQL 老男孩 一 视图 视图其实就是给表起个别名 1.创建视图 格式:CREATE VIEW 视图名称 AS SQL语句 CREATE VIEW v1 AS ...
- opengl基础学习专题 (二) 点直线和多边形
题外话 随着学习的增长,越来越觉得自己很水.关于上一篇博文中推荐用一个 学习opengl的 基于VS2015的 simplec框架.存在 一些问题. 1.这个框架基于VS 的Debug 模式下,没有考 ...
- JavaScript 基础学习(二)js 和 html 的结合方式
第一种 使用一个标签 <script type="text/javascript"> js代码; </script> 第二种 使用 script 标签,引入 ...
- JavaScript 基础 学习 (二)
JavaScript 基础 学习 节点属性 每一个节点都有自己的特点 这个节点属性就记录着属于自己节点的特点 1. nodeType(以一个数字来表示这个节点类型) 语法:节点.nodeT ...
- ADO.NET基础学习 二(Command对象)
②command对象用来操作数据库.(三个重要的方法:ExecuteNonQuery(),ExecuteReader(),ExecuteScalar()) ⑴以update(改数据)为例,用到Exec ...
- Java基础学习笔记二十八 管家婆综合项目
本项目为JAVA基础综合项目,主要包括: 熟练View层.Service层.Dao层之间的方法相互调用操作.熟练dbutils操作数据库表完成增删改查. 项目功能分析 查询账务 多条件组合查询账务 添 ...
- pytorch基础学习(二)
在神经网络训练时,还涉及到一些tricks,如网络权重的初始化方法,优化器种类(权重更新),图片预处理等,继续填坑. 1. 神经网络初始化(Network Initialization ) 1.1 初 ...
- JS基础学习(二)
昨天把网站上的基础知识看完了,下面是剩下的部分 第六节 JS Window浏览器对象模型 JavaScript全局对象,函数,变量均自动成为window对象的成员. 1.Window对象 1.获取浏览 ...
随机推荐
- MFC获取当前时间
获取按钮消息响应函数: void CTest17GetTimeDlg::OnGetTime() { // TODO: 在此添加控件通知处理程序代码 //UpdateData(true); CTime ...
- 【MySql】Linux下更改转移mysql数据库目录
1.关闭MySql: #service mysqld stop 2.转移数据: #cd /var/lib #ls #cp -a mysql /opt/mysql/ 3.修改配置文件,一下三个: ...
- Ajax请求安全性讨论 - Eric.Chen(转)
Ajax请求安全性讨论 - Eric.Chen 时间 2013-07-23 20:44:00 博客园-原创精华区 原文 http://www.cnblogs.com/lc-chenlong/p/3 ...
- git学习笔记(五)
---恢复内容开始--- 嗯 今天又看到一个非常不错的入门git教程 Mark一下 阮一峰Git操作详解 主要讲解了五个常用的git命令 git clone git remote git fetch ...
- jquery的验证实例方法
上一篇介绍了js的正则验证法,这一片就用jquery来实例运行一下其中的几个方法 Js部分 <script> $(function(){ var ok1=false; var ok2=fa ...
- PHP学习笔记十五【面向对象二】
<?php class Cat{ //public 访问修饰符 public $name; public $age; } //创建 $cat1=new Cat; $cat1->name=& ...
- POJ 2112 Optimal Milking (二分 + 最大流)
题目大意: 在一个农场里面,有k个挤奶机,编号分别是 1..k,有c头奶牛,编号分别是k+1 .. k+c,每个挤奶机一天最让可以挤m头奶牛的奶,奶牛和挤奶机之间用邻接矩阵给出距离.求让所有奶牛都挤到 ...
- C++服务器设计(二):应用层I/O缓冲
数据完整性讨论 我们已经选择了I/O复用模型作为系统底层I/O模型.但是我们并没有具体解决读写问题,即在我们的Reactor模式中,我们怎么进行读写操作,才能保证对于每个连接的发送或接收的数据是完整的 ...
- CppCon - Modern Template Metaprogramming 杂记
2014年底才看到github和channel9上有CppCon2014的视频和资料,顿时激动不已.最近小生也一直在研习CppCon2014中令人兴奋的内容.这篇鄙文就是小生学习了<Modern ...
- uploadify ,前端页面获取值,json,ajax
针对这几月的技术,做一次小总结 上传控件uploadify function inexel() { $("#btnExcel").uploadify({ 'method': 'po ...