ADO.net是一门.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基础学习总结的更多相关文章

  1. ADO.net基础学习总结(二)

    将连接字符串放入配置文件中 1.添加一个“应用程序配置文件:app.config” <?xml version="1.0" encoding="utf-8" ...

  2. ADO.NET 基础学习笔记1

    1. ODBC.OLEDB.ADO.ADO.NET之间的关系 ODBC: 开放数据库互连(ODBC)是MICROSOFT提出的数据库访问接口标准.ODBC(Open DatabaseConnectiv ...

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

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

  4. ADO.NET基础学习 一(连接数据库)

    (记录下方便自己复习) 概念 简单地理解为用来连接数据库的类. 工作流程 ①Connection对象用来连接数据库. 两种连接方式:Windows身份验证 / sqlserver验证 private ...

  5. ADO.NET基础学习-----四种模型,防止SQL注入

    1.ExcuteNonQuery 执行非查询语句,返回受影响的行数. // 1.ExcuteNonQuery string sqlconn = "Data Source=wss;Initia ...

  6. 如鹏网学习笔记(六)ADO.Net基础

    ADO.Net基础 一.ADO.Net简介 1,程序要通过SQL语句自动化的操作数据库,必须要用一个类库, 类库要提供execute("insert into ...")/exec ...

  7. ADO.NET基础巩固-----连接类和非连接类

          最近的一段时间自己的状态还是不错的,早上,跑步,上自习看书,下午宿舍里面编程实战,晚上要么练习代码,要么去打球(在不打就没机会了),生活还是挺丰富的. 关于C#的基础回顾就先到前面哪里,这 ...

  8. C#/.NET 基础学习

    初识C# C#是微软公司发布的面向对象的.运行于.NET Framework之上的高级程序设计语言.与Java有着明显不同,借鉴Delphi的特点,与COM(组件对象模型)直接集成,是微软公司 .NE ...

  9. .Net Core 系列:2、ADO.Net 基础

    目录: 1.环境搭建 2.ADO.Net 基础 3.ASP.Net Core 基础 4.MD5.Sha256.AES 加密 5.实现登录注册功能 6.实现目录管理功能 7.实现文章发布.编辑.阅览和删 ...

随机推荐

  1. poj3358数论(欧拉定理)

    http://poj.org/problem?id=3358 (初始状态为分数形式)小数点进制转换原理:n / m ; n /= gcd( n , m ) ; m/= gcd( n , m ) ; n ...

  2. Xcode5和6上新建工程如何本地化启动页面

    建议阅读本篇文章前先具备iOS本地化的基本知识,Google中搜索“iOS本地化”,有成片的教程~~ 最近有个app需要支持英语.简体中文.繁体中文,由于启动页面上有文字,所以也不得不做下本地化处理. ...

  3. Eclipse安装Vim——viPlugin插件

    1.下载viPlugin: http://www.viplugin.com/files/viPlugin_2.14.0.zip 2.安装 解压后有两个文件夹: features 和 plugins 把 ...

  4. jquery插件datepicker

    jQuery UI很强大,其中的日期选择插件Datepicker是一个配置灵活的插件,我们可以自定义其展示方式,包括日期格式.语言.限制选择日期范围.添加相关按钮以及其它导航等. <script ...

  5. C++ Primer Plus 6th 读书笔记 - 第6章 分支语句和逻辑运算符

    1. cin读取错误时对换行符的处理 #include <iostream> using namespace std; int main() { double d; char c; cin ...

  6. JDBC学习入门

    一.JDBC相关概念介绍 1.1.数据库驱动 这里的驱动的概念和平时听到的那种驱动的概念是一样的,比如平时购买的声卡,网卡直接插到计算机上面是不能用的,必须要安装相应的驱动程序之后才能够使用声卡和网卡 ...

  7. Oracle中index by binary_integer的作用

    如语句:type  numbers  is table of number index by binary_integer;其作用是,加了”index by binary_integer ”后,num ...

  8. 使导出excle文档实现ALT+Enter的效果()

    JAVA中输入什么转义字符,使导出excle文档实现ALT+Enter的效果?或者有没有其他方法可以实现. 20 JAVA中输入什么转义字符,使导出excle文档实现ALT+Enter的效果?或者有没 ...

  9. Eclipse 安装使用 Maven

    安装 Maven 下载 Maven  http://mirrors.hust.edu.cn/apache/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9 ...

  10. webservice 技术改进

    Webservice 技术改进 1.不同系统不同语言之间的交互 基于http协议进行传输,使用REST服务实现WS 2.不同系统相同语言之间的交互 使用RPC(romate process call) ...