ADO.net基础学习总结
释放资源:凡是实现了idisposable借口的类都需要用using来释放资源
using()
{
}
连接数据库
//创建数据库连接:
using(SqlConnection conn=new SqlConnection("连接字符串"))//连接字符串
{
conn.open();//打开连接
using(SqlCommand cmd =conn.CreateCommd())
{
cmd.CommadTest="sql 语句";
......
在线数据连接方式:
参数化查询:
cmd.CommadText="select * from T_Student where name =@name add age=@age;"
cmd.Parameters.add(new SqlParameter("@name", txtName.text));//给参数赋值
cmd.Parameters.add(new SqlParameter("@age", Convert.ToInt32(txtAge.text)));//给参数赋值
ExcuteNonquery一般用于非查询语句(insert,delete,update)
cmd.CommandText = "insert into T_a (name , age ) values (@name,@age);";
cmd.Parameters.Add(new SqlParameter("@name", txtName.Text));
cmd.Parameters.Add(new SqlParameter("@age", txtAge.Text));
int count= cmd.ExecuteNonQuery();
MessageBox.Show(count+"行受影响")
ExcuteScalar一般用与执行返回值只有一行一列的sql语句
cmd.CommandText = "select age from T_a where Id=@id and name =@name;";
cmd.Parameters.Add(new SqlParameter("@id", txtID.Text));
cmd.Parameters.Add(new SqlParameter("@name", txtName.Text));
try
{
string age = cmd.ExecuteScalar().ToString();
MessageBox.Show(age);
}
catch
{
MessageBox.Show("找不到匹配的值");
}
ExcuteReader用于sql查询语句,查询结果放在数据库中,占用服务器资源,返回类型为SqlDateReader类型
cmd.CommandText = "select * from T_a;";
SqlDataReader reader = cmd.ExecuteReader();
while (reader.Read())
{
long id = reader.GetInt64(0);
string name = reader.GetString(1);
int age = reader.GetInt32(2);
MessageBox.Show(id + "," + name + "," + age);
}
离线数据连接方式:
Dataset查询结果读取到客户端本地,适合数据量较少的查询
cmd.CommandText = "select * from T_a where name = @name;";
//参数化查询
cmd.Parameters .Add (new SqlParameter("@name",txtName.Text));
SqlDataAdapter adapter = new SqlDataAdapter(cmd);
//创建Dataset数据集
DataSet dataset = new DataSet();
//将查询结果填入Dataset中
adapter.Fill(dataset);
DataTable table = dataset.Tables[0];
DataRowCollection rows = table.Rows;
//遍历每一行的值
foreach (DataRow row in rows )
{
long id = (long)row["id"];
string name = (string)row["name"];
int age = (int)row["age"];
MessageBox .Show (id+","+name+","+age);
}
ADO.net基础学习总结的更多相关文章
- ADO.net基础学习总结(二)
将连接字符串放入配置文件中 1.添加一个“应用程序配置文件:app.config” <?xml version="1.0" encoding="utf-8" ...
- ADO.NET 基础学习笔记1
1. ODBC.OLEDB.ADO.ADO.NET之间的关系 ODBC: 开放数据库互连(ODBC)是MICROSOFT提出的数据库访问接口标准.ODBC(Open DatabaseConnectiv ...
- ADO.NET基础学习 二(Command对象)
②command对象用来操作数据库.(三个重要的方法:ExecuteNonQuery(),ExecuteReader(),ExecuteScalar()) ⑴以update(改数据)为例,用到Exec ...
- ADO.NET基础学习 一(连接数据库)
(记录下方便自己复习) 概念 简单地理解为用来连接数据库的类. 工作流程 ①Connection对象用来连接数据库. 两种连接方式:Windows身份验证 / sqlserver验证 private ...
- ADO.NET基础学习-----四种模型,防止SQL注入
1.ExcuteNonQuery 执行非查询语句,返回受影响的行数. // 1.ExcuteNonQuery string sqlconn = "Data Source=wss;Initia ...
- 如鹏网学习笔记(六)ADO.Net基础
ADO.Net基础 一.ADO.Net简介 1,程序要通过SQL语句自动化的操作数据库,必须要用一个类库, 类库要提供execute("insert into ...")/exec ...
- ADO.NET基础巩固-----连接类和非连接类
最近的一段时间自己的状态还是不错的,早上,跑步,上自习看书,下午宿舍里面编程实战,晚上要么练习代码,要么去打球(在不打就没机会了),生活还是挺丰富的. 关于C#的基础回顾就先到前面哪里,这 ...
- C#/.NET 基础学习
初识C# C#是微软公司发布的面向对象的.运行于.NET Framework之上的高级程序设计语言.与Java有着明显不同,借鉴Delphi的特点,与COM(组件对象模型)直接集成,是微软公司 .NE ...
- .Net Core 系列:2、ADO.Net 基础
目录: 1.环境搭建 2.ADO.Net 基础 3.ASP.Net Core 基础 4.MD5.Sha256.AES 加密 5.实现登录注册功能 6.实现目录管理功能 7.实现文章发布.编辑.阅览和删 ...
随机推荐
- 解决使用Touch ID API在回调时界面“长时间卡住”的问题
Touch ID是iOS8上新公开的API,关于详细介绍和用法可以看CocoaChina的这两篇文章:上 和 下,在此篇文章中不再赘述. 我在app中需要的效果是如果touch id验证通过,则页面p ...
- EffectiveC#01--避免返回内部类对象的引用
此篇是对00中第3点的再一次阐述. 1.如果一个属性返回一个引用类型,那么调用者就可以访问这个对象的公共成员,也包括修改这些属性的状态. public class MyBusinessObject { ...
- [canvas]通过动态生成像素点做绚丽效果
本例中的粒子就是实实在在的像素,由js代码在canvas上动态生成的像素点!这些像素点通过一个运动方法有规律地动了起来.透过这个思路,我们可以想到很多很炫的效果,但是这个性能有待考察.实验证明,动态控 ...
- vs2013调试的时候卡顿
做毕业设计的时候忽然发现开始调试以后 会卡顿,这在前两天是没有的,纳尼,把我愁坏了. 首先以为程序或者vs出问题了.随后发现每次调试以后cpu急剧增加.随后就开始卡顿. 随后去网上搜索,发现两个答案. ...
- Qt调用外部程序QProcess通信
mainwindow.cpp文件: -------------------------------- #include "mainwindow.h" #include " ...
- poj1623 Squadtrees
转载请注明出处: http://www.cnblogs.com/fraud/ ——by fraud 需要求出按题目要求建四叉树所需的结点个数,和压缩后的四叉树的结点个数(压缩即只要将 ...
- 亲试,Windows平台上使用Qt5.2.1编写Android
首先把工具都下载好: 1. Qt for Android: http://qt-project.org/downloads 2. Android NDK http://developer.androi ...
- 做了一个js的拉动遮罩层,两个图片分别显示的效果
想做成车修好了和没修好的对比,所以需要两个图片.需要用到的知识点, 1.定位 2.mouse 的事件(代码中体现) 3.鼠标指针的移动距离算法 4.css中,cursor的应用 好了,废话不多说 ,直 ...
- C# 对类中的保护成员进行写操作(邀请大家拍砖)
假如我有一个类库 Lib,提供一个类 ClassA 对外服务,ClassA 中有若干只读属性 PropA, PropB 等等,外部调用者无法对 ClassA 中的 PropA 和 PropB 进行写操 ...
- js倒计时 重发 效果
<script type="text/javascript"> window.onload = function() { var wait = 60; function ...