ADO.NET对象之 DataTable
ado.net可以在与断开连接的方式下通过dataset或datatable对象进行数据处理,当需要更新数据时才重新与数据源进行连接,并更新数据源。
datatable对象表示保存在本机内存中的表,它提供了对表中行列数据对象的各种操作。可以直接将数据从数据库填充到datatable对象中,也可以将datatable对象添加到现有的dataset对象中
首先了解下ado.net的基本结构图吧
下面再说说datatable对象创建方式
1.创建datatable对象,采用下列两种方式之一:
使用datatable类的构造函数创建datatable对象,例如:
datatable table = new datatable( );
调用dataset的tables对象的add方法创建datatable对象
dataset dataset = new dataset( );
datatable table = dataset.tables.add(“mytablename”);
2. 在datatable对象中添加列
调用datatable对象的column中的add方法添加列。例如:
datatable table = new datatable(“table1”);
table.columns.add(“姓名”,typeof(system.data.sqltypes.sqlstring));
table.columns.add(“年龄”,typeof(system.data.sqltypes.sqlint32));
注意:由于sql server数据库中的有些数据类型(如sqldatetime、sqldecimal和sqlstring等)和公共语言运行库(clr)不相同,要将创建的表保存到sql server数据库中,要使用system.data.sqltype命名空间中提供的sql server数据类型。
3 在datatable对象中创建行
由于datatable对象的每一行都是一个datarow对象,所以创建行时可以利用datatable对象的newrow方法创建一个datarow对象,并设置新行中各列的数据,然后利用add方法将datarow对象添加到表中。例如:
//dt是一个datatable对象
datarow row = dt.newrow( );
row[“姓名”] = “张三”;
row[“年龄”] = 20;
dt.rows.add(row);
4 将sql server数据库中的表填充到datatable对象中
通过dataadapter对象的fill方法完成。
string connectionstring = properties.settings.default.mydatabaseconnectionstring;
sqlconnection conn = new sqlconnection(connectionstring);
sqldataadapter adapter = new sqldataadapter(“select * from mytable2”,conn);
dataset dataset = new dataset( );
//如果不指定表名,则自动使用默认的表名
adapter.fill(dataset);
//可以使用索引生成的表
datagridview1.datasource = dataset.tables[0];
dataset 对象
创建dataset对象
[解决方案资源管理器]--〉添加一个新建或者已经存在的数据库
[数据]--〉[创建数据源]--〉创建或添加一个已经存在的数据库
绑定窗体控件时使用向导创建dataset对
dataset mydatabase = new dataset( );
填充dataset对象
创建dataset后,就可以使用sqldataadapter对象把数据导入到dataset对象中,比如通过fill方法将数据填充到dataset中的某个表中。
上一篇: 卵巢表示很受伤 只因女人在经期做一件事
下一篇: 马超和张飞曾惨败,为何却没有被问罪呢?