我们今天利用ADO.NET设计获取架构使用OleDbDataReader的GetSchemaTable 方法,publicvirtualDataTableGetSchemaTable();该ADO.NET设计方法需要结合OleDbCommand.ExecuteReader的一个重载方法才能完成,可以设置重载方法的唯一参数,publicOleDbDataReaderExecuteReader(CommandBehaviorbehavior);CommandBehavior为一枚举对象,定义为
创新互联成立与2013年,是专业互联网技术服务公司,拥有项目成都网站建设、做网站网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元荔城做网站,已为上家服务,为荔城各地企业和个人服务,联系电话:18982081108
- [Flags]
- [Serializable]
- publicenumCommandBehavior
#T#CommandBehavior.SchemaOnly:只返回列信息,不影响数据库状态;CommandBehavior.KeyInfo:返回列和主键信息。执行此查询时不锁定选定的行。如果使用CommandBehavior.SchemaOnly就不需要再加CommandBehavior.KeyInfo了。如果你从前是个ADO开发人员,现在已经用ADO.NET了,那么你可能把数据访问看做是一个万能的对象,如Recordset。我们很自然地会将旧的对象模式同新的对象模式匹配起来,并将现有的方法用于.NET应用程序。然而,在ADO环境中的某些好的方法在转换到ADO.NET环境时就可能并不强大了。下面是ADO.NET设计演示代码:
- privateDataTableGetSchemaUsingOleDbDataReader(stringconnString)
- {
- OleDbConnectionmyConn=newOleDbConnection(connString);
- DataTabletable1=null;
- try
- {
- OleDbCommandcmd=newOleDbCommand("Select*fromCustomers",myConn);
- myConn.Open();
- OleDbDataReaderdataReader=cmd.ExecuteReader(CommandBehavior.SchemaOnly);
- table1=dataReader.GetSchemaTable();
- dataReader.Close();
- }
- catch(Exceptionex)
- {
- MessageBox.Show(ex.ToString());
- }
- finally
- {
- if(myConn.State!=ConnectionState.Closed)
- myConn.Close();
- myConn.Dispose();
- }
- returntable1;
- }
该方法返回了Customers表的架构信息,当然,如果连接到Access数据库,上面的函数只需修改一下连接字符串和查询字符串就可以正确执行。
名称栏目:如何利用ADO.NET设计获取架构方法实现
文章地址:http://www.mswzjz.com/qtweb/news32/181482.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联