注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

共享圈

www.gxquan.com的同步博客,保存高质量文章之用

 
 
 

日志

 
 

DataAdapter FillSchema 的用法  

2013-02-15 23:27:28|  分类: ASP.NET WEB |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
FillSchema 方法使用 SelectCommand 从数据源中检索架构。与 SelectCommand 关联的连接对象必须有效,但不需要 将其打开。如果调用 FillSchema 之前连接已关闭,则将其打开以检索数据,然后再将其关闭。如果调用 FillSchema 之前连接已打开, 它将保持打开状态。

FillSchema 操作将 DataTable 添加到目标 DataSet 中。然后,它向 DataTable 的 DataColumnCollection 中添加列,并且当数据源中存在以下 DataColumn 属性时配置这些属性: 

AllowDBNull 
AutoIncrement。您必须分别设置 AutoIncrementStep 和 AutoIncrementSeed。 
MaxLength 
ReadOnly 
Unique 
FillSchema 还根据以下规则配置 PrimaryKey 和 Constraints 属性: 

如果 SelectCommand 返回一个或多个主键列,则它们被用作 DataTable 的主键列。 
如果未返回任何主键列,但返回了唯一列,则当且仅当所有唯一列都不可为空时,唯一列用作主键。如果任何一列都可以为空,则将 UniqueConstraint 添加到 ConstraintCollection 中,但不设置 PrimaryKey 属性。 
如果既返回了主键列又返回了唯一列,则主键列用作 DataTable 的主键列。 
请注意,主键和唯一约束按照上述规则添加到 ConstraintCollection 中,但不添加其他约束类型。

如果 DataAdapter 在填充 DataTable 时遇到重复列,它将以“columnname1”、“columnname2”、 “columnname3”这种模式命名后面的列。如果传入数据包含未命名的列,它们将按“Column1”、“Column2”的模式放 在 DataSet 中。向 DataSet 添加多个结果集时,每个结果集都放在一个单独的表中。将整数值追加到指定的表名(例如“Table”、 “Table1”、“Table2”等)从而对附加结果集进行命名。在应用程序中使用列名和表名时应小心,一定不要与这些命名模式发生冲突。
  评论这张
 
阅读(69)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017