第五天
增加一列:
想要增加两列,可以在后面直接输入,中间用“,”号隔开;
增加默认约束:
判断是否锁定:
用count(*)来查询,不会将内容输出;
DataSet (ado.net断开时数据访问)
数据的集合、临时数据库、内存数据库。
Fill()方法可以进行分页,但是不高效
SqlDataAdapter是DataSet和数据库之间沟通的桥梁
其实SqlDataAdapter内部也是使用了connection ,command
SqlCommandBuilder可以实现自动更新;
数据绑定:
使用数据源绑定的时候,才能使用:
表示下拉菜单的valuemember的值;
通过list泛型集合来绑定数据:
将表的内容绑定在datagridview控件中
1.创建一个方法,有表中的列数个属性,在单击事件中创建list集合:
2.List是强类型的数据类型,可以代替dataset
3.循环调用表中的数据赋值给list集合,
4.将集合中的数据赋值到控件中
5.
在编译时就能确定数据类型的就是强类型;
通过带参数的SQL语句向数据库中插入空值:
DBNull.Value 表示数据库中的空值,
SQLHelper 封装一个SQLHelper类方便使用:
创建一个类,进行封装,不用存储内容,只有一些方法,可以写成静态类;
1.连接字符串,需要添加引用;
表示私有的,只读的一个变量;
2.定义一个方法,实现一个执行insert、delete、update语句的方法:
3.Public static int 方法名(string sql,params SqlParameter[ ]pms)
4.这是一个可变数组
5.执行返回单个值的方法:只有这里不同,还有返回值是object类型
6.执行返回DataReader的方法
7.封装一个执行SQL语句返回DataTble的方法
常用到的三个方法:
ExecuteNonQuery()执行对数据库的增删改,返回受影响的行数,适合:insert、delete、update(对于其他语句返回-1)
ExecuteScalar()执行查询,返回首行首列
ExecuteReader()执行查询,返回DataReader对象
ADO.NET组成:
l 数据提供程序(常用类)
Connection,用来连接数据库
Command,用来执行SQL语句
DataReader只读、只进的结果集,一条一条读取数据(StreamReader、XmlReader微软的类库中这些Reader的使用方式都差不多)
DataAdapter,一个封装了上面3个对象的对象。
数据集(DataSet),临时数据库。
l 断开式数据操作
ConnectionStringBuilder//自动生成连接字符串
Parameter//带参数的SQL语句
Transaction//在ADO.NET中使用事务
l 与DataSet相关的类:
DataView//视图类,DataTable中的数据以不同的视角查看
DataRowView//DataView中的行。
DataTable //DataSet中的数据表
DataRow//DataTable中的行
DataColumn//DataTable中的列
DataRealation//DataTable与DataTable的关系
Constraint//DataTable中建立的约束
传入的值可以是参数,也可以是数组:
Ado.net 的连接池默认是启用的,可通过连接字符串中设置;
在连接字符串中设置pooling=false,就禁用连接池了;
Case when
Then 后面的数据类型必须与表中的数据类型一致;