第十三天 - ADO.NET 笔记

断开连接层

作用:通过内存中的对象模型来构建关系数据。(在不与DBMS连接的情况下)

DataSet的主要属性
属性作用
CaseSensitive指示DataTable对象中的字符串笔记是否区分大小写
DataSetName表示DataSet的一个友好名,通常通过构造参数指定
EnforceConstraints获取或设置一个值,该值指示在尝试执行任何更新操作时是否遵循约束规则
HasErrors获取一个值,指示在此DataSet中任何DataTable对象中的数据行是否存在错误
RemotingFormat定义DataSet在传输时内容的序列化方式
DataSet的主要方法
方法作用
AcceptChanges()提交自加载此DataSet或上次调用此方法以来对其进行的所有更改
Clear()通过移除所有DataTable表中的所有行来清除任何DataSet数据
Clone()复制DataSet的结构,而不是DataSet的数据,包括所有DataTable架构、关系和约束
Copy()复制该DataSet的结构和数据
GetChanges()获取DataSet的副本,该副本包含自上次加载以来或自调用AcceptChanges()以来对数据集进行的所有更改。
HasChanges()获取一个值,该值指示DataSet是否更改,包括新增行、已删除的行或已修改的行
Merge()将指定的DataSet合并到当前的DataSet中
ReadXml()基于XML架构和从流中读取的数据,定义DataSet对象的结构并用数据填充它
RejectChanges()回滚自创建DataSet以来或上次调用AcceptChanges()以来对其进行的所有更改
WriteXml()把DataSet的内容写入一个有效的数据流

构建DataSet

//建立DataSet对象并添加一些属性
DataSet carsInventoryDS = new DataSet("Car Inventory");

carsInventoryDS.ExtendedProperties["TimeStamp"] = DataTime.Now;
carsInventoryDS.ExtendedProperties["DataSetID"] = Guid.NewGuid();
carsInventoryDS.ExtendedProperties["Company"] = "Mikko's Hot Tub Super Store";

DataColumn

表示DataTable中的一个单列。例如一个表需要4个DataColumn,一个DataColumn对应一列(CarID、Make、Color、PetName)

DataColumn的属性
属性作用
AllowDBNull该属性用来指示对于表中的行,此列中是否允许空值,默认为true
AutoIncrement、AutoIncrementSeed和AutoIncrementStep这些属性用来配置该列的自增行为,当需要确保列值的唯一性时将会非常有用。
Caption该属性用来获取或设置要显示的列的标题,它允许我们为数据库列名定义一个用户友好的版本
ColumnMapping该属性决定当使用DataSet.WriteXml()来把DataSet保存到XML文件时,该列将以什么样的形式呈现。可以把数据列写成XML元素、XML特性或文本的形式
ColumnName该属性用来获取或设置列集合中的列名。默认的列名格式是”Column”字符和(n+1)后缀的形式
DataType该属性定义了存储在列中的数据类型
DefaultValue该属性用来获取或设置在创建新行时列的默认值
Expression该属性用来获取或设置表达式,用于筛选行、计算列中的值或创建聚合列
Ordinal该属性用来以数字形式获取DataTable中列在Columns集合中的位置
ReadOnly该属性指示如果向表中添加了行,列是否还允许更改
Table该属性用来获取DataColumn所属的DataTable
Unique该属性用来获取或设置一个值,指示列的每一行中的值是否必须是唯一/可重复的

代码:

static void FillDataSet(DataSet ds){
//建立对应AutoLot数据库Inventory表真实字段的数据列
DataColumn carIDColumn = new DataColumn( "CarID",typeof(int) )
carIDColumn.Caption = "Car ID";
carIDColumn.ReadOnly = true;
carIDColumn.AllowDBNull = false;
carIDColumn.Unique = true;

DataColumn carMakeColumn = new DataColumn("Make",typeof(string));
DataColumn carColorColumn = new DataColumn("Color",typeof(string));
DataColumn carPetNameColumn = new DataColumn("PetName",typeof(string));
carPetNameColumn.Caption = "Pet Name";
}

启用自增列:

//修改前面的carIDColumn
carIDColumn.AutoIncrement = true;
carIDColumn.AutoIncrementSeed = 0;
carIDColumn.AutoIncrementStep = 1;

说明:三个属性分别表示实现自增,指定列的起始值,指定每次增加的步进值。

最后使用dataTable对象.Columns.AddRange(….)添加DataColumn加入DataTable中

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值