完整word版ADO习题答案.docx
《完整word版ADO习题答案.docx》由会员分享,可在线阅读,更多相关《完整word版ADO习题答案.docx(30页珍藏版)》请在冰点文库上搜索。
![完整word版ADO习题答案.docx](https://file1.bingdoc.com/fileroot1/2023-6/29/41e6e2d8-5fec-4877-b76f-de35f3987812/41e6e2d8-5fec-4877-b76f-de35f39878121.gif)
完整word版ADO习题答案
1.3习题
1.以下那些情况适用使用非连接环境的体系结构?
A.供某证券公司的营业部进行交易使用的软件
B.供某企业的领导了解该企业各种数据的软件
C.某饭店对客房进行管理的软件
D.畜牧场对牲畜的数量进行跟踪的软件
2.在VisualStudio.NET的服务器资源管理器中,下列哪些是可见的服务项目?
A.数据连接
B.网络连接
C.事件日志服务
D.设备管理器
2.4习题
1.ADO.NET模型中的下列哪些对象属于Connected对象?
A.Connection
B.DataAdapter
C.DataReader
D.DataSet
2.目前,Microsoft.NETFramework的发行包中包含以下.NET数据提供程序。
A.SQLServer.NET数据提供程序
B.OLEDB.NET数据提供程序
C.ODBC.NET数据提供程序
D.XML.NET数据提供程序
3.为访问MicrosoftAccess2000数据库中的数据,可以使用以下哪种.NET数据提供者连接到数据库?
A.SQLServer.NET数据提供程序
B.OLEDB.NET数据提供程序
C.ODBC.NET数据提供程序
D.XML.NET数据提供程序
4.为了在程序中使用ODBC.NET数据提供程序,应在源程序工程中添加对程序集______的引用。
A.System.Data.dll
B.System.Data.SQL.dll
C.System.Data.OleDb.dll
D.System.Data.Odbc.dll
5.打开SQLConnection时返回的SQLServer错误号为4060,该错误表示:
A.连接字符串指定的服务器名称无效
B.连接字符串指定的数据库名称无效
C.连接超时
D.连接字符串指定的用户名或密码错误
6.为使用OleDb.NETDataProviver连接到SQLServer2000数据库,应将Connection对象的ConnectionString属性中的Provider子属性的值设置为:
A.Provider=SQLOLEDB
B.Provider=SQLSERVER
C.Provider=Microsoft.Jet.OLEDB.4.0
D.Provider=MSDAORA
7.在使用ADO.NET编写连接到SQLServer2000数据库的应用程序时,从提高性能的角度考虑,应创建____类的对象,并调用其Open方法连接到数据库:
A.OleDbConnection
B.SqlConnection
C.OdbcConnection
D.Connection
8.在使用ADO.NET设计数据库应用程序时,可通过设置Connection对象的_______属性来指定连接到数据库时的用户和密码信息。
A.ConnectionString
B.DataSource
C.UserInformation
D.Provider
9.应用程序所用的数据都存储在MicrosoftSQLServer2000的数据库中。
你预期会有很多的用户同时使用这个应用程序,当用户为报表获取数据时,你希望响应时间最优化。
你写了一个程序来从数据库获得数据,有效的连接字符串保存在此程序的connString的变量中。
需要在程序中添加代码来实现和数据库的连接,你将从如下的代码段中选择哪一个?
A.DimcnnAsNewOleDb.OleDbConnection(connString)
B.DimcnnAsNewSqlClient.SqlConnection(connString)
C.DimcnnAsNewADODB.Connection()
D.DimcnnAsNewSQLDMO.Database()
10.开发一个Windows应用程序,从一个MicrosoftSQLServer数据库存储并检索数据。
应用程序使用ADO.NET和SqlClient托管的provider。
需要识别从SQLServer返回的所有错误的严重等级,错误处理代码该如何做?
A.当错误出现并访问Source属性时捕获抛出的SqlException.
B.当错误出现并访问Class属性时捕获抛出的SqlException.
C.当错误出现后为连接的状态检查SqlConnection对象的State属性
D.当错误出现后为连接的状态检查SqlConnection对象的DataSource属性
11.开发一个Windows应用程序TestKiApp。
TestKiApp使用一个SqlConnection对象来对数据库进行访问。
在一个内存及硬盘空间有限的电脑上运行TestKiApp。
在完成使用SqlConnection对象后,必须确信连接被关闭并且使用的资源被立即释放。
请选择:
A.调用SqlConnection对象的Finalize方法.
B.调用SqlConnection对象的Dispose方法.
C.设置SqlConnection对象等于Nothing.
D.设置SqlConnection对象等于“”.
12.开发一个Windows应用程序,使用MicrosoftSQLServer数据库来存储和检索数据。
创建一个中心错误处理过程来处理应用程序中所有的数据错误。
确保从数据库检索数据时应用程序显示所有错误信息。
如何编写错误处理过程?
A.PublicSubdisplayqlErrors(ByValTestKingExAsSqlException)
MessageBox.Show(“Error:
“&TestKingEx.ToString())
EndSub
B.PublicSubdisplayqlErrors(ByValTestKingExAsSqlException)
MessageBox.Show(“Error:
“&TestKingEx.Message)
EndSub
C.PublicSubdisplayqlErrors(ByValTestKingExasSqlException)
DimxAsSqlError
ForeachxInTestKingEx.Errors
MessageBox.Show(“Error:
“&x.ToString())
Next
EndSub
D.PublicSubdisplayqlErrors(ByValTestKingExAsSqlException)
DimxAsException
ForeachxInTestKingEx.Errors
MessageBox.Show(“Error:
“&x.ToString())
Next
EndSub
13.使用一个存储过程来返回正确的值。
存储过程放在一个MicrosoftSQLServer2000数据库上。
在VisualStudio.NET中使用哪个窗口来选择存储过程调试?
A.ServerExplorer
B.Command
C.TaskList
D.Output
14.你创建了一个XMLweb服务用来从SQLServer数据库检索数据。
你实例化一个名为TestKConnection的SqlConnection对象,并设置ConnectionString的属性,将连接池的最大连接数设置为50。
当达到最大连接数50,在接到第51个连接请求时,最有可能出现的结果是什么?
A.立即抛出一个异常
B.连接池的最大连接数将扩大
C.一个新的连接池被创建,并拥有相同的最大连接数
D.这种请求被排队,直到有空闲的连接或等待超时
15.使用一个MicrosoftSQLServer数据库和一个SqlClient数据提供程序开发一个应用程序。
应用程序包含以下四个代码段,每次调用一个:
DimTKConnection1AsNewSqlConnection()
TKConnection1.ConnectionString=“DataSource=”_
&“ProdServer;InitialCatalog=Billing;”_
&“IntegratedSecurity=true”
TKConnection1.Open()
DimTKConnection2AsNewSqlConnection()
TKConnection2.ConnectionString=“DataSource=”_
&“ProdServer;InitialCatalog=Billing;”_
&“IntegratedSecurity=true”
TKConnection2.Open()
DimTKConnection3AsNewSqlConnection()
TKConnection3.ConnectionString=“DataSource=”_
&“SearchServer;InitialCatalog=Search;”_
&“IntegratedSecurity=true”
TKConnection3.Open()
DimTKConnection4AsNewSqlConnection()TKConnection4.ConnectionString=
“DataSource=”_&“ProdServer;Initial
Catalog=OrderEntry;”_&“IntegratedSecurity=true”TKConnection4.Open()
使用SQLServer验证应用程序,应用程序使用同一身份运行所有代码段。
使用连接池,并且整个应用程序在连接不超时的情况下运行,创建几个连接池?
A.one
B.Two
C.Three
D.Four
3.8习题
1.设计ADO.NET应用程序时,在下列哪些情况下,使用Command对象直接访问数据源更加有效?
A.使用ADO.NET对XML数据文件中的数据进行分析和处理
B.在SQLServer数据库的表中搜索某个字段值
C.计算SQLServer数据库中数据表的行数
D.在SQLServer数据库中创建存储过程
2.某Command对象cmd将被用来执行以下SQL语句,以向数据源中插入新记录:
insertintoCustomersvalues(1000,“tom”)
请问,语句cmd.ExecuteNonQuery();的返回值可能为
A.0
B.1
C.1000
D.“tom”
3.为创建在SQLServer2000中执行Select语句的Command对象,可先建立到SQLServer2000数据库的连接,然后使用连接对象的_______方法创建SqlCommand对象。
A.Open
B.OpenSQL
C.CreateCommand
D.CreateSQL
4.SQLServer2000的BEGINTRANS和COMMITTRANS、ROOLBACKTRANS语句可用于______中来支持操作的事务特性。
A.Select语句
B.存储过程
C.ADO.NET连接对象的Transaction属性
D.ADO.NET命令对象的CommandText属性
5.在ADO.NET中,执行数据库的某个存储过程,则至少需要创建________并设置它们的属性,调用合适的方法:
A.一个Connection对象和一个Command对象
B.一个Connection对象和DataSet对象
C.一个Command对象和一个DataSet对象
D.一个Command对象和一个DataAdapter对象
6.编写代码,在一个事务中执行两个命令strCom1和strCom2,已写以下代码。
(行号仅供引用)
01DimtransMainasSqlTransaction=connMain.BeginTransaction
02DimcmdMainasSqlCommand=NewSqlCommand
03
04cmdMain.CommandText=strCom1
05cmdMain.ExecuteNonQuery()
06cmdMain.CommandText=strCom2
07cmdMain.ExecuteNonQuery()
08transMain.Commit
09connMain.Close
第03行将用以下哪个代码?
A.transMain.Save
B.transMain.RollBack
C.cmdMain.Connection=connMain
D.cmdMain.Transaction=transMain
7.下面哪些是有效的SqlTransaction类的方法?
A.Commit
B.Terminate
C.Save
D.Close
E.Rollback
答案:
A,C,E
8.开发一个Windows应用程序,计划使用ADO.NET来调用一个名为EmployeeData的MicrosoftSQLServer存储过程。
这个过程接受参数以按照雇员的姓名来查询数据库。
需要给应用程序添加代码来建立参数以使用存储过程。
应当使用下列哪三行代码?
A.Dimparm1AsNewSqlParameter()
B.Dimparm1AsNewSqlParameter(“@FamilyName”,Sq1DbType.VarChar)
C.parm1.Direction=ParameterDirection.Input
D.parm1.Direction=ParameterDirection.InputOutput
E.cmd.Parameters.Add(parm1)
F.parm1.Add(cmd)
9.使用VisualStudio.NET开发一个Windows应用程序。
该程序使用ADO.NET对象来调用MicrosoftSQLServer存储过程。
数据库管理员负责所有存储过程的编码和维护。
他会阶段性的更新这些存储过程。
当你的应用程序运行的时候,它必须能够通过传送给存储过程和从存储过程返回的数值来识别出任何存储过程的修改。
该使用哪个ADO.NET对象和方法?
A.CommandBuilder.RefreshSchema
B.CommandBuilder.DeriveParameters
C.SqlCommand.CreateParameter
D.SqlDataAdapter.GetFillParameters
10.创建一个OleDbCommand对象来为邮件列表程序收集邮政编码等信息。
创建一个名为conn的OleDbConnection对象,需要初始化OleDBCommand对象并设置CommandText和Connection的属性。
哪两段代码是可以使用的?
A.DimcommAsNewOleDbCommand()
comm.CommandText=“SELECT*FROMRegions”
comm.Connection=conn
B.Dimcomm.AsNewOleDbCommand(“sp_GetRegions”,conn)
comm.CommandType=CommandType.Text
C.DimcommAsNewOleDbCommand(“SELECT*FROMRegions”,_
conn)
comm.CommandType=CommandType.Text
D.DimcommAsNewOleDbCommand(“sp_GetRegions”,conn)
comm.CommandType=CommandType.TableDirect
E.DimcommAsNewOleDbCommand()
comm.CommandType=“SELECT*FROMRegions”
comm.Connection=conn
11.开发一个Windows应用程序与一个MicrosoftSQLServer数据库交互。
应用程序使用户能更新items信息,每次一个用户修改一个item,应用程序执行一个SQLServer存储过程TestKingSP来更新数据库中的行。
在每个用户访问期间TestKingSP将运行许多次。
应用程序使用一个SqlCommand对象来执行TestKingSP。
必须修改代码使得使用这个对象获得最优的查询性能。
请选择:
A.在每个调用SqlCommand.ExecuteNonQuery前调用SqlCommand.DeriveParameters方法.
B.在每个调用SqlCommand.ExecuteNonQuery前调用SqlCommand.Prepare方法
C.在首次调用SqlCommand.ExecuteNonQuery前调用SqlCommand.DeriveParameters方法
D.在首次调用SqlCommand.ExecuteNonQuery前调用SqlCommand.Prepare方法.
12.MicrosoftSQLServer数据库有一个存储过程用来合计每天接收到的订单的总数。
存储过程返回一个类型为integer的单个数值的结果。
编写代码执行存储过程并返回一个integer结果,实例化一个SqlCommand对象TestKCommand并初始化所有参数,
使用哪个TestKCommand方法?
A.ExecuteReader
B.ExecuteNonQuery
C.ExecuteScalar
D.ExecuteXMLReader
13.开发一个客户关系管理软件,创建一个名为sp_GetYTDRevenues的存储过程,这个存储过程把当年截至当日的收入作为输出参数返回。
这个总数必须是一个字符串。
写以下代码来调用sp_GetYTDRevenues。
‘…
‘…
cmd.CommandType=CommandType.StoredProcedure
DimparmAsSqlParameter=cmd.Parameters.Add(__
"@YTDRev",SqlDbType.Int)
parm.Direction=ParameterDirection.Output
cnn.Open()
cmd.ExecuteNonQuery()
现在必须写另外一些代码来访问输出参数,该使用哪一段代码?
A.strResult="Totalis:
"&_
a.cmd.Parameters("@Output").Value.ToString()
B.strResult="Totalis:
"&_
a.cmd.Parameters("@Output").ToString()
C.strResult="Totalis:
"&_
a.cmd.Parameters("@YTDRev").ToString()
D.strResult=“Totalis:
"&_
a.cmd.Parameters("@YTDRev").Value.ToString()
4.7习题
1.在ADO.NET中,为访问DataTable对象从数据源提取的数据行。
可使用DataTable对象的_______属性。
A.Rows
B.Columns
C.Constraints
D.DataSet
2.下列哪些选项可以作为DataSet的数据源?
A.SQLServer2000数据库中的视图
B.Oracle数据库中的表
C.XML文件
D.Excel制表文件
3.为了在程序中使用DataSet类定义数据集对象,应在文件开始处添加对命名空间_______的引用。
A.System.IO
B.System.Utils
C.System.Data
D.System.DataBase
4.已知ds1、ds2分别代表两个不同的DataSet对象。
其中ds1已包含名为“Customer”的DataTable对象,且该DataTable对象被变量dt_Customer引用。
已知dt_Customer表中有100条记录,则执行下列语句后,新的数据表new_dt_Customer中包含______条记录。
DataTablenew_dt_Customer=dt_Customer.Copy();
A.0
B.100
C.200
D.300
5.在DataSet中,若修改某一DataRow对象的任何一列的值,该行的DataRowState属性的值将变为________。
A.DataRowState.Added
B.DataRowState.Deleted
C.DataRowState.Detached
D.DataRowState.Modified
6.myDataSet是一数据集对象,其中包含通过DataAdapter从数据库检索的构架和数据。
在本地对myDataSet进行修改后,调用下列语句
DataSetchanges=myDataSet.GetChanges();获得的新的数据集changes将包含原数据集中状态为______的数据行。
A.Added
B.Deleted
C.Detached
D.Modified
E.Unchanged
7.dataTable是数据集myDataSet中的数据表对象,有9条记录。
调用下列代码后,dataTable中还有几条记录?
dataTable.Rows[8].Delete();
A.9
B.8
C.1
D.0
8.你正在创建一个ASP.NET应用程序来追踪一家公司的销售订单。
此应用程序用的是ADO.NETDataSet对象,DataSet包含了两个DataTable对象。
一个表的名字为Orders,另一个表名为OrderDetails。
来自Orders表的数据显示在列表框中,你希望当用户在列表框中选择了Orders表的信息时,它相应的Orderdetails就会显示在Grid中。
你想修改这些对象使你的代码能够找到你选择的订单的所有orderdetails信息,你该怎么做?
A.在DataSet对象的Relations集合中添加一个DataRelation对象