####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. flash builder关掉自动编译功能

    菜单栏 项目,里面有个自动构建,把√去掉就ok了

  2. redis在windows中的安装

    之前介绍过了redis的相关知识,以及在linux平台上安装redis,为了方便学习,这里记录一下redis在windows平台上的安装步骤 1.下载redis下载地址https://github.c ...

  3. IOS网络编程。。

    ASI 与AFN框架:  越低层性能越好. AFNetworking ASIHTTPRequest(性能好点) NSURL会更好. NSURL NSURLRequest NSData * data = ...

  4. linux桌面环境gnome,kde,xfce,lxde 使用比较(转)

    Linus Torvalds大神前几日在 Google+上表示,GNOME 3"无可容忍的凌乱",改投Xfce桌面环境.下面就GNOME, KDE, XFCE和 LXDE略作比较. ...

  5. Multi-line NSAttributedString with truncated text

    http://stackoverflow.com/questions/7611816/multi-line-nsattributedstring-with-truncated-text/1017279 ...

  6. VB6.0和VB.Net的函数等对照表

    VB6.0和VB.Net的对照表 VB6.0 VB.NET AddItem Object名.AddItem Object名.Items.Add ListBox1.Items.Add ComboBox1 ...

  7. js学习-DOM之动态创建元素的三种方式、插入元素、onkeydown与onkeyup两个事件整理

    动态创建元素的三种方式: 第一种: Document.write(); <body> <input type="button" id="btn" ...

  8. step by step 之餐饮管理系统三

    1.说明 表名的长度最长为18个字符 茶色的字段为主键或联合主键 浅黄色的字段为索引 浅灰底色的字段为临时表中比正式表多出的字段 数据库系统:Sqlserver2008 脚本工具:使用CodeGene ...

  9. Linux内核--网络栈实现分析(一)--网络栈初始化

    本文分析基于内核Linux Kernel 1.2.13 原创作品,转载请标明http://blog.csdn.net/yming0221/article/details/7488828 更多请看专栏, ...

  10. Adaboost算法初识

    1.算法思想很简单: AdaBoost 是一种迭代算法,其核心思想是针对同一个训练集训练不同的分类器,即弱分类器,然后把这些弱分类器集合起来,构造一个更强的最终分类器.(三个臭皮匠,顶个诸葛亮) 它的 ...