❶ 请介绍一下ADO.NET框架下几种数据库访问技术的优缺点。详细一点
数据源控件访问数据库:简单快捷,但是真正的开发中不会去这样用的,因为1是效率问题2是灵活性不足,这就跟ASP.NET里面的其他控件一样,正的要做大应用是不会用这种东西的,因为扩展性不足,或者为了做到兼容性损失了效率。 使用.NET数据提供程序访问数据库:共有4种,SQL Server .NET Framework数据提供程序,OLEDB .NET Framework数据提供程序,ODBC .NET Framework数据提供程序,Oracle .NET Framework数据提供程序。看名字也该明白,针对不同的数据库使用不同的数据提供程序,这是开发中最经常使用的方式,缺点是米有办法应对多数据库的情况,也就是说假如你的应用是面向多数据库的,那么有几种数据库,基本要写几套SQL。 用DATASet:恭喜你不用写T-SQL了,但是你要学会它的语法,从此不用担心多数据库应用的问题。但是惨了,它为了兼容多种数据库因此T-SQL写的真的“很兼容”执行效率太低,同样的一个表现结果,这个SQL嵌套了好几次,效率灰常低。 LINQ to SQL:老实讲,他就是为SQL SERVER而生的,你也不用写T-SQL了,它的语法学学还是好处颇多,因因为你在LINQ TO OBJECT上也能见到这种语法的影子收益颇多,它的执行效率很快,但是不管怎么讲也没有你直接用SQL Server .NET Framework数据提供程序,自己写SQL快,可控制程度高,好处也是显而易见就像用DATASET一样,你不用再为了数据持久化问题写一大堆ORM的东西了。 by the way,目前.NET中,ORM用的比较多的是Nhibernate,但是你如果就想用SQL SERVER还是用LINQ to SQL吧,好处显而易见,在开发过程中对于数据库的变更也是比较常见的,你的数据库字段不知道会出现在哪个类,哪个文件中,如果用了DATASET,或LINQ2SQL在编译阶段你就可以察觉到这种变更带来的影响。
❷ 使用ADO.NET设计数据库应用程序
认识ADO和ADO Net ActiveX Data Object(简称ADO)是微软提供的数据访问模型 依据这个模型可很轻松的操作数据库 同时ADO受到微软所以开发工具的支持 所以无论是VB VC ASP开发都可以使用 所以开发ASP数据库应用程序 只需在代码中嵌入SQL(结构化查询语言)命令 用户就可以很轻松的输入 更新 和删除后台的数据库记录 当用户端的浏览器填好表单所要求输入的资料并按下 Submit(确认) 按钮后 经过互联网 内联网传送HTTP请求到WEB服务器 该请求在WEB服务器执行一个表单所指定的Active Server Pages程序(后缀名为 ASP的文档) 从ADO Net不仅仅是ADO的一个简单升级 它是微软 NET战略的一个重要组成部分 那么到底和以前有什么不同呢?现在就让本文来告诉你 以前在ADO中进行数据处理的主要方法是OLEDB 现在在ADO Net中也是如此 但是微软为了更好地支持目前广泛使用的两个数据库Oracle和SQL Server对OLEDB做了专门的扩展 它们分别是OracleClient和SQLClient 类 当然由于数据库产品很多 为了便于激薯以前的OLEDB的程序升级 故也对OLEDB本身做了升级处理 在 Net中表现为OLEDB类 那么这三个类——OLEDB OracleClient和SQLClient在编程使用上到底有什么不同呢?值得庆幸的是在 Net中进行数据库的编程时 不管你使用上面提到的 个类中的哪一个类 这 个类在语法和用法上都大同小异 可以用一通百通来形容 怎样学习ADO Net技术 笔者在学习和使用了ADO Net编程后 总结出下面 个必需的步骤 而且这 个步骤的顺序是绝对不可以调换的 如果在以后的编程中发现 个步骤的顺序换了或缺了一个步骤 那么你的代码肯定是错的 使用对应类中的连接方法来连接数据库 如使用SQLClient类 那么就用SqlConnection 建立数据库的链接 打开此链接 执行对应类中的命令方法来指定要执行的SQL语句 如使用SQLClient类就使用SqlCommand执行指定的SQL语句 下面举出的两个例子就是在 Net中使用ADO Net编程的代码 由于SQL Server 在使用中比Oracle简单 所以这里的数据库使用Microsoft的SQL Server 原因是它在安装后无须配置就可以直接使用 既然访问的是SQL Server 那么使用的类当然是SQLClient类 这两个例子是 在数据库中对数据进行添加 删除 修改 利用ADO技术建立一个SQL Server 的数据库 例 一启动SQL Server 然后建立一个数据库和一个表 并且在表中一定要有主键 随便输入一些数据 完成后保存此表 本文使用的表结构如下
表名 使用系统默认的表名table 然后打开VS Net建立一个新的工程 并从工具箱中将 SqlDataAdapter 控件拖动到窗口底源铅裂部 随后 数据适配器配置向导 窗口会自动运行 按照向导提示完成操作(如图)
需要注意的是 在出现的 生成SQL语句 窗口中要输入标准的select语句 在本例中我们将从表Table 中返回id和d这两列 所以应该输入 SELECT id d FROM Table 语句 当然单击 查询生成器 按钮系统也可以自动生成这条语句 当完成 数据适配器配置向导 后 你会在窗口的底部发现系统自动添加了 SqlConnection 接下来右击 SqlDataAdapter 在快捷菜单中选择 生成数据集 随后可以看见 生成数据集 设置窗口 保持默认雹闭设置并单击 确定 现在又会发现在设计窗口下多了一个 Dataset 到此为止 就差最后一个控键 SqlCommand 我们只要在工具栏中将它拖放过来并修改其属性的 Connection 设置为 SqlConnection 并在 CommandText 属性中利用 查询生成器 为其生成select语句即可 到现在为止 我们就完成了ADO Net访问数据库的一大半了 网格是显示数据的最好方法 为了让数据显示在网格中我们需要添加此控件并且修改其属性 添加的方法就是直接从工具箱中将它拖过来即可 不过它的属性设置倒是很简单 只要将 Datasource 设置为 Dataset table 即可 table是表示表的名字 最后添加两行代码即可完成对数据的添加 删除 修改的操作 在Form _Load部分加入 Sql DataAdapter FillDataSet ″Table ″ 代码 Private Sub Form _LoadByVal sender As System Object ByVal e As System EventArgs Handles MyBase LoadSqlDataAdapter FillDataSet ″Table ″ 将表中的数据添加到DataSet 中 End Sub添加一个Button 在Button _Click中加入 SqlDataAdapter UpdateDataSet ″Table ″ 代码 Private Sub Button _ClickByVal sender As System Object ByVal e As System EventArgs Handles Button ClickSqlDataAdapter UpdateDataSet ″Table ″ 完成数据库的添加 删除 修改功能 End Sub程序说明 其中SqlDataAdapter Fil语句是把表中具体的数据添入DataSet 后 而SqlDataAdapter Update是表示当完成对数据的修改后使用Update进行数据库的更新 使修改的数据生效 按 F 运行程序 你就可以看见表中的数据都显示出来了 同时你可以随意对它们进行修改 如要删除数据 只要按下键盘上的 del 键即可 例一中使用控件的简单介绍
lishixin/Article/program/net/201311/13743
❸ Ado.net访问数据库的方法和步骤
不论从语法来看 还是从风格和设计目标来看 ADO NET都和ADO有显著的不同 在ASP中通过ADO访问数据库 一般要通过以下四个步骤
创建一个到数据库的链路 即ADO Connection
查询一个数据集合 即执行SQL 产生一个Recordset
对数据集合进行需要的操作
关闭数据链路
在ADO NET里 这些步骤有很大的变化 ADO NET的最重要概念之一是DataSet DataSet是不依赖于数据库的独立数据集合 所谓独立 就是 即使断开数据链路 或者关闭数据库 DataSet依然是可用的 如果你在ASP里面使用过非连接记录集合(Connectionless Recordset) 那么DataSet就是这种技术的最彻底的替代品
有了DataSet 那么 ADO NET访问数据库的步骤就相应地改变了
◆创建一个数据库链路 ◆请求一个记录集合 ◆把记录集合暂存到DataSet ◆如果需要 返回第 步 (DataSet可以容纳多个数据集合) ◆关闭数据库链路 ◆在DataSet上做所需要的操作
lishixin/Article/program/net/201311/15216
❹ 请简描述ADO.NET访问数据库的步骤
1.创建数据库连接字符创
2.导入命名空间System.data.sqlcen...
3.jia创建SQLCONNECTION 对象 把链接字符创 放进去
4. 打开数据库
5.声明回SQLcommand对象 括号答内放 执行命令的SQL语句 和connection对象
6command对象。方法执行相关命令