ado.net 2.0 中获取数据库定义varchar字段长度
2007-08-24 10:26
134 查看
近日写一数据库转换程序,需要读取sqlserver中varchar字段的长度。
结果datacolumn的maxlength属性一直是-1。上网找了找,基本上大叫都处于郁闷不解状态,
后查询msdn网站的一篇文章:
http://support.microsoft.com/kb/314145/zh-cn
见第8条:
SqlDataAdapter 类提供 Fill 和 FillSchema 两种方法,这对于加载这些数据很关键。这两种方法均可将信息加载到 DataSet 中。Fill 加载数据本身,而 FillSchema 加载有关特定表的所有可用的元数据(如列名、主键和约束)。处理数据加载的正确方式是先运行 FillSchema,后运行 Fill。例如:
结果datacolumn的maxlength属性一直是-1。上网找了找,基本上大叫都处于郁闷不解状态,
后查询msdn网站的一篇文章:
http://support.microsoft.com/kb/314145/zh-cn
见第8条:
SqlDataAdapter 类提供 Fill 和 FillSchema 两种方法,这对于加载这些数据很关键。这两种方法均可将信息加载到 DataSet 中。Fill 加载数据本身,而 FillSchema 加载有关特定表的所有可用的元数据(如列名、主键和约束)。处理数据加载的正确方式是先运行 FillSchema,后运行 Fill。例如:
daAuthors.FillSchema(dsPubs,SchemaType.Source, "Authors"); daAuthors.Fill(dsPubs,"Authors");
如果您只使用 Fill,则只能加载描述列名和数据类型所需要的基本元数据。Fill 方法不加载主键信息。
若要更改此默认行为,可以将 DataAdapter 对象的 MissingSchemaAction 属性
设置为 MissingSchemaAction.AddWithKey,该属性会将主键元数据与默认信息一起加载。例如: [code]
daAuthors.MissingSchemaAction = MissingSchemaAction.AddWithKey; daAuthors.Fill(dsPubs,"Authors");
相关文章推荐
- 使用Ado.net获取数据库架构信息
- ADO.Net都有哪些从数据库获取数据的方式
- 使用Ado.net获取数据库架构信息
- c# sqlite 数据库加密2010-05-29 10:55用了ADO.NET 2.0 SQLite Data Provider 这样可以直接利用它来创建一个加密的sqlite数据库。
- 使用Ado.net获取数据库架构信息
- ADO.Net都有哪些从数据库获取数据的方式
- 使用ADO.Net获取Sql Server数据库系统中所有数据库的名字
- ADO.Net都有哪些从数据库获取数据的方式
- ADO.Net都有哪些从数据库获取数据的方式
- c# sqlite 数据库加密2010-05-29 10:55用了ADO.NET 2.0 SQLite Data Provider 这样可以直接利用它来创建一个加密的sqlite数据库。
- ADO.NET技术简介(二)获取数据库数据DataAdapter、DataReader、DataSet
- 使用Ado.net获取数据库架构信息
- Asp.Net Core 2.0 项目实战(4)ADO.NET操作数据库封装、 EF Core操作及实例
- 在VB.NET中用ADO(不是ADO.NET)获取数据库中的所有非系统表名
- ASP.NET 2.0里轻松获取数据库连接统计数据
- 使用Ado.net获取数据库架构信息
- ADO.Net都有哪些从数据库获取数据的方式
- 使用Ado.net获取数据库架构信息
- ADO.Net都有哪些从数据库获取数据的方式
- 使用ADO.NET2.0提升数据交互性能 使用SqlBulkCopy批量写入数据库