连接SQL server数据库方法
- 使用SqlDataAdapter、SqlConnection、SqlCommand、DataSet
- SqlDataAdapter是 DataSet和 SQL Server之间的桥接器,用于检索和保存数据。它可以使数据源中数据与DataSet中数据保持一致,通过Fill方法(它可更改DataSet中的数据以匹配数据源中的数据)和 Update(它可更改数据源中的数据以匹配 DataSet中的数据)
- SqlConnection、SqlCommand分别用于连接数据源和对数据库执行操作,通常搭配使用。
- 通过类本身带参数的构造函数SqlCommand(string,SqlConnection)来创建执行对象,SqlCommand类不可以被继承。
- DataSet代表数据在内存中的缓存,可以把DataSet当成内存中的数据库,DataSet是不依赖于数据库而独立的数据集合。
-
- 因为DataSet可以看做是内存中的数据库,也因此可以说DataSet是数据表的集合,它可以包含任意多个数据表(DataTable),而且每一 DataSet中的数据表(DataTable)对应一个数据源中的数据表(Table)或是数据视图(View)
- DataSet对数据操作更灵敏,不仅可以查询还可以修改、更新等,而DataReader对象只能从数据源读取数据。不过,DataReader的执行速度和效率会更高一些.
-
- 用DataReader对象
- DataReader对象是一个简单的数据集,用于从数据源中检索只读数据集,常用于检索大量数据。DataReader对象只允许以只读、顺向的方式查看其中所存储的数据,提供一个非常有效率的数据查看模式,同时DataReader对象还是一种非常节省资源的数据对象。
- DataReader对象可通过Command对象的ExecuteReader方法从数据源中检索数据来创建
- DataTable对象
- 这个对象是一个数据表,可以存储对数据库操作执行的结果,可以使用它的Load()方法,从DataReader里取得数据来填充这个表.
- DataSet是由很多歌DataTable表组成.通过属性Rows(index)访问行,Item(index)访问列。
- ExecuteNonQuery() 这个方法并不返回一个DataReader对象,而是返回一个int类型的值,即在执行之后在数据库中所影响的行数。
- ExecuteScalar() 这个方法不接受任何参数,仅仅返回查询结果集中的第一行第一列,而忽略了其它的行和列,而且返回的是一个object类型,在使用之前必须先将它强制转换为所需类型。如果返回的仅仅是一个单独的数据元,则可以使用此方法来提高代码的性能。
这几个ADO.NET对象对数据库操作很重要,上面都是一些最基本的操作,可以完成一些简单的增删改查操作,如果需要对数据表字段就行排序、筛选等更多操作,暂时还用不着,需要的话,可以继续深入学习,在学习中去总结,学习是一个过程,需要积累和总结。