####ADO.NET
####1 启用sa验证与窗体相关知识
    - 启用sa验证
    - ShowDialog()
----
####2 连接字符串
    Data Source=服务器;Initial Catalog=数据库名字;`(Integrated Security=True;)`uid=用户名;pwd=密码

---
####3 ADO.NET 增加(Create)、读取(Read)、更新(Update)和删除(Delete)
- SqlConnection(connectionStrings)
- SqlCommand(sql,Sqlconnection)
    - ExecuteScalar() 返回第一行第一列
        - COUNT() 返回该字段的数量
        - SUM()某行的和
    - ExecuteReader()返回数据集
    - ExecuteNonQuery()返回受影响的行数---update、insert、delete
- 使用using(){}语句来替换try{}cantch(){}
- 参数化查询
    - cmd.Parameters.AddWithValue()参数
    - like中“%”的写法
- DBhelper编写
    - 添加引用System.Configuration
    - ConfigurationManager.ConnectionStrings[""].ConnectionString
- App.config 配置
    - connectionStrings
    - 节点:connectionString providerName
- SqlDataReader新建数据读取对象
    - Read()
    - HasRow-判读是否包含多行

---

####4 显示与操作数据库
- ListView控件
    - 1 首先先建立第一项 ListViewItem并且赋值第一行的值
    - 2 添加子项 SubItem
        - lvPhoneBook.SelectedItems[0].Index;//取当前选中项的index
        - lvPhoneBook.SelectedItems.Count//判断listview有被选中项
    - 3 View-Datils
    - 4 TAG :添加:dr["xx"];读取:listView1.SelectedItems[0].Tag
    - 5 对话框的结果:DialogResult 是枚举类型
- 数据绑定
    - 1 DataSet
        - 1 临时仓库
        - 2 使用DataAdapter作为搬运工
    - 2 DataAdapter
        - 1 步骤:先DataSet ds=new DataSet();
        - 2 再 SqlDataAdapter da=new SqlDataAdapter(sql,conn)
        - 3 然后 da.Fill(ds);
        - 4 读取记录ds.Table[0].Rows[i][j]
        - 5 遍历:for循环 集合的遍历
    - 3 DataGrivdView控件
        - 1 绑定数据 DataSource
        - 2 选择整行 SelectionMode=FullRowSelect
        - 3 取消默认选择行 xxx.SelectedRows[0].Selected=false
        - 4 当前选中的行的值(数据库中的id) CurrentRow.Cells[0].Value
        - 5 双击事件 CellDoubleClick
    - 4 ComboBox的数据绑定
        - 1 显示字段 DisplayMember
        - 2 值字段 ValueMember
        - 3 绑定数据源 DataSource
        - 4 当前选择项的值SelectedValue
    - 5 传值方式
        - 1 类的字段传值
        - 2 构造函数传值

---
####5 微软企业库
    - 1 dll引用
        - Microsoft.Practices.EnterpriseLibrary.Common.dll
        - Microsoft.Practices.EnterpriseLibrary.Data.dll
        - Microsoft.Practices.ServiceLocation.dll
        - Microsoft.Practices.Unity.dll
        - Microsoft.Practices.Unity.Interception.dll
    - 2 命名空间
        - using Microsoft.Practices.EnterpriseLibrary.Data;
        - using System.Data.Common;
    - 3 使用
        - 1 sql语句:db.GetSqlString(sql)
        - 2 存储过程 db.GetStoredProcCommand(sql)
    - 4 步骤
        - 1 新建连接:Database db=DatabaseFactory.CreateDatabase("ConnectionString")
        - 2 ExecuteNonQuery()
            - 1 新建 sql
            - 2 新建命令 dbCommand cmd=db.GetSqlStringCommand(sql)
            - 3 (可选)传参数: db.AddInParameter(cmd,"@xxx",dbType.Int32,xxx)
            - 4 返回db.ExecuteNonQuery(cmd)
        - 3 ExecuteScalar(cmd)
        - 4 ExecuteDataSet(cmd)
        - 5 ExecuteRader(cmd)
            - 特殊:using(IDataReader dr=db.ExecuteReader(cmd)){}
        - 6 Guid产生:System.Guid.NewGuid().ToString()

ADO.NET笔记20160322的更多相关文章

  1. ADO学习笔记之注入漏洞与参数化查询

    ADO学习笔记之注入漏洞与参数化查询 作为新手,在学习ADO程序时,使用 sql 语言查询数据时,很容易写类似如下代码: using (SqlConnection con = new SqlConne ...

  2. ADO.NET笔记——使用连接池

    相关知识: 连接池的意义: 应用程序往往涉及大量的,并发的数据访问操作 数据库服务器能够同时维系的连接数量非常有限.如果某个数据库访问操作不及时关闭连接,就会减少其他调用对数据库访问的机会.因此,一般 ...

  3. ADO.NET笔记——执行事务

    相关知识: 处于同一事务(Transaction)内的一组操作,要么都成功执行,最后完全提交:但如果只要有任何一个操作失败或者出问题,所有值钱执行的操作也都取消并恢复到初始状态(即回滚) SqlTra ...

  4. ADO.NET笔记——使用DataAdapter执行增删改操作

    相关知识: DataSet中的数据一旦从数据库下载下来,便不再与数据库保持联系.如果修改了DataSet中的数据,需要重新建立连接,并且通过SQL命令将修改更新到数据库去 编写SQL命令往往比较繁琐和 ...

  5. ADO.NET笔记——调用存储过程

    相关知识: 在ADO.NET访问SQL Server时,鼓励使用存储过程取代常规的SQL语句. 存储过程有下列优点: 存储过程中的SQL语句将会经过预先的解析和编译,然后存放在数据库服务器上行.调用的 ...

  6. ADO.NET笔记——基本概念

    ADO.NET中的主要对象: Connection:连接对象.用于建立从应用程序到数据库服务器指定数据库的连接通道 Command:命令对象.用于执行增删查改等数据库语句命令 DataReader:数 ...

  7. ADO.Net笔记整理(一)

    几次装机,Notes已烟消云散,近日因为Node.js死活搞不定,无奈装机,备份好的东东,没想到磁盘扇区出现异常,可能是PE启动盘的病毒,只好将磁盘全部重新分区,恢复数据也懒得恢复了,日积月累关乎将来 ...

  8. ADO.net笔记

    1.DbConnectionConnection对象也称为数据库连接对象,Connection对象的功能是负责对数据源的连接.所有Connection对象的基类都是DbConnection类.Conn ...

  9. ADO.NET笔记——使用通用数据访问

    相关知识: 前面所有示例,君是访问特定的数据库(SQL Server),因此注入SqlConnection.SqlCommand.SqlDataReader.SqlDataAdapter等类名都添加了 ...

随机推荐

  1. 三级设置页面管理测试demo

    #include "PhoneBookWindow.h"#include "xWindow/xWindow.h"#include "hardwareD ...

  2. Oracle题目

    1. 创建一个函数fun_sal,该函数根据部门号获得该部门下所有员工的平均工资Create or replace function fun_sal(deptnos number)return var ...

  3. 用T-sql 实现Oracle Connect by 的功能

    ; with subDepartment as ( select BesonDepartmentID, DepartmentName, ParentBesonDepartmentID, 1 as Hi ...

  4. Sql Server 简单查询 异步服务器更新语句

    //结构:select 子句 [into 子句] from 子句  [where 子句] [group by 子句]  [having 子句] [order by 子句] select  dept_c ...

  5. 自动化运维工具之ansible(转)

    原文链接:http://os.51cto.com/art/201409/451927_all.htm

  6. 用JQuery的Ajax对表进行处理的一些小笔记

    --示例INSERT INTO 表名 ( 参数 )VALUES(@+参数),new SqlParameter("@参数", 值);注:配合SqlHelper使用. 一.Load() ...

  7. Android 内存监测工具 DDMS --> Heap

    一.什么是内存泄露    内存泄露是指程序中间动态分配了内存,但是在程序结束时没有释放这部分内存,从而造成那一部分内存不可用.导致系统运行变慢或应用程序崩溃.二.如何检测Android中的内存泄露   ...

  8. 面向对象、类与对象、成员与局部变量、封装、private、构造函数、this、static、extends、super、final、abstract、interface、多态、内部类、异常【5】

    若有不正之处,请多多谅解并欢迎批评指正,不甚感激. 请尊重作者劳动成果: 本文原创作者:pipi-changing本文原创出处:http://www.cnblogs.com/pipi-changing ...

  9. JavaScript-数据引用类型对象

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  10. 修改默认MYSQL数据库data存放位置

    随着业务量的增长,mysql默认安装所在分区大小出现瓶颈,通常需要将datadir换到较大的分区 示例原目录:/usr/local/mysql/data/示例新目录:/data/mysqldata/ ...