ADO.net试题(2)

来源:互联网 发布:python 数据标准化 编辑:程序博客网 时间:2024/06/05 10:02
 51
.NET构架中被用来访问数据库数据的组件集合称为:
A. ADO
B. ADO.NET
C. COM+
D. Data Service.NET
答案: B
52
在ADO.NET 中,执行数据库的某个存储过程,则至少需要创建________并设置它们的属性,调用合适的方法:
A. 一个Connection 对象和一个Command 对象
B. 一个Connection 对象和DataSet 对象
C. 一个Command 对象和一个DataSet 对象
D. 一个Command 对象和一个DataAdapter 对象
答案:A
53
dataTable 是数据集myDataSet 中的数据表对象,有9 条记录.调用下列代码后,dataTable 中还有几条记录
dataTable.Rows[8].Delete();
A. 9
B. 8
C. 1
D. 0
答案:A
54
在ADO.NET中,为了确保DataAdapter对象能够正确地将数据从数据源填充到DataSet中,则必须事先设置好DataAdapter对象的下列哪个Command属性
Delete Command
Update Command
Insert Command
Select Command
答案:D
55
为使用OleDb .NET Data Proviver连接到SQL Server 2000数据库,应将Connection对象的ConnectionString属性中的Provider子属性的值设置为:
Provider=SQLOLEDB
Provider=SQLSERVER
Provider=Microsoft.Jet.OLEDB.4.0
Provider=MSDAORA
答案:A
56
在使用ADO.NET编写连接到SQL Server 2000数据库的应用程序时,从提高性能的角度考虑,应创建____类的对象, 并调用其Open方法连接到数据库:
OleDbConnection
SqlConnection
OdbcConnection
Connection
答案:B
57
在使用ADO.NET 设计数据库应用程序时,可通过设置Connection 对象的_______属性来指定连接到数据库时的用户和密码信息.
A. ConnectionString
B. DataSource
C. UserInformation
D. Provider
答案:A
58
使用名为TKorderEntry 的DataSet对象开发一个管理某项目的数据,TkorderEntry对象有两个名为orderNames和OrderDetails的DataTable对象,在两个DataTable间定义一个名为orderDetailsKey的ForeignKeyConstraint对象.想要在orderNames中删除一行,由于它与OrderDetails表中的行相关联,会产生异常.
出现问题最可能的原因是:
A. orderDetails.KeyDeleteRule的当前值是Rule.Cascade.
B. orderDetails.KeyDeleteRul的当前值是Rule.SetNull.
C. orderDetails.KeyDeleteRule的当前值是Rule.SetDefault.
D. orderDetails.KeyDeleteRule的当前值是Rule.None.
答案: D
59
你正在创建一个ASP.NET 应用程序来追踪一家公司的销售订单.此应用程序用的是ADO.NET DataSet 对象,DataSet包含了两个DataTable 对象.一个表的名字为Orders,另一个表名为OrderDetails.来自Orders表的数据显示在列表框中,你希望当用户在列表框中选择了Orders 表的信息时,它相应的Order details 就会显示在Grid中.你想修改这些对象使你的代码能够找到你选择的订单的所有order details 信息,你该怎么做
A.在DataSet 对象的Relations 集合中添加一个DataRelation 对象
B.用DataSet.Merge 方法把Orders 表和OrderDetails 表相互连接起来
C.在OrderDetails表中添加一个ForeignKeyConstraint
D.在OrderDetails中添加一个keyref约束
答案:A

60
开发一个用DataGrid控件来显示产品的分类列表的 ASP.NET程序,产品数据存放在名为TestKingProducts的Microsoft SQL Server 数据库中,每一个产品有一数值变量 ProductID和字符变量ProductName.利用SqlDataAdapter 对象和 SqlCommand通过存储过程来检索数据库中的产品数据,设置SqlCommand 对象的CommandType属性为CommandType.StoredProcedure,设置 CommandText 属性为 procProductList.产品列表通过由ProductID降序分类填充到一个DataTable对象中,要求数据通过ProductName按字母倒序显示.
请选择:
A. SqlCommand 对象的CommandType属性设为CommandType.Text.
按下面方法更改SqlCommand 对象的CommandType属性:
Select * FROM procProductList orDER BY ProductName DESC;
绑定 DataGrid控件至DataTable对象.
B. 创建一个基于DataTable 对象的DataView 对象,
设置DataView对象的Sort属性为 ";ProductName DESC".
绑定 DataGrid控件至DataView对象.
C. 设置DataGrid控件的 AllowSorting属性为True.
设置显示ProductName 的DataGridColumn 的SortExpression属性为
";ProductName DESC".
绑定 DataGrid控件至DataTable对象.
D. 设置DataTable 对象的DisplayExpression 属性为 "ORDER BY ProductName DESC".
绑定 DataGrid控件至DataTable对象.
答案: B
61
使用 Microsoft SQL Server .NET Data Provider连接到某个数据库. 数据库管理员报告, 由于应用程序的超量使用,等待建立新连接的用户的数据请求被中止,通过设置最小连接池数为10来改进请求通过的能力.
请选择:
A. 在应用程序的Web.config 文件中设置appSettings 元素的connection 元素,设置连接池的最小数量为10.
B. 在服务器的Web.config 文件中增加appSettings 元素的connection 元素,设置连接池的最小数量为10.
C. 在连接字符串中增加一个Min Pool Size属性,设置连接池的最小数量为10.
D. 增加一个Min Pool Size属性给 ADO.NET connection 对象, 该属性赋值为10.
答案: C
62
你正在为你的公司创建一个ASP.NET的应用程序.公司的数据都存储在Microsoft SQLServer6.5数据库中.你的应用程序能产生一个上百万行的基于transaction表的交易帐目汇总报表,你希望你的应用程序能够尽可能快的返回汇总报表.你该如何做,使应用程序与数据库连接检索数据
A.用SqlConnection对象连接数据库,用SqlCommand对象运行存储过程来返回数据
B.用OleDbConnection对象连接数据库,用OleDbCommand对象运行存储过程来返回数据
C.配置SQL Server使它支持HTTP访问,创建XML模板来运行存储过程,在XML模板中返回数据
D.用COM interop 来创建ADODB.Connection对象,用ADODB.Command对象来运行SQL语句返回数据
答案:B
63
创建一个从Microsoft SQL Server 数据库中检索数据的ASP.NET页.在SQLServer数据库中创建一个名为GetYTDSales的方法用来运行存储过程.存储过程定义一个指定产品的输入参数并返回整年产品的销售数据.在GetYTDSales方法中声明一数字变量,把存储过程的返回值赋给该变量.
请选择:
A. 创建一个SqlDataAdapter对象,调用它的Fill方法来运行存储过程并把整年产品的销售数据赋给该数字变量.
B. 创建一个SqlDataAdapter对象,调用它的Update方法来运行存储过程并把整年产品的销售数据赋给该数字变量.
C. 创建一个SqlDataAdapter对象,调用它的ExecuteScalar方法来运行存储过程并把整年产品的销售数据赋给该数字变量.
D. 创建一个SqlDataAdapter对象,调用它的ExecuteReader方法来运行存储过程并把整年产品的销售数据赋给该数字变量.
答案: C
64
创建ASP.NET页面来显示产品的清单.产品的信息存储在Microsoft SQLServer数据库上.你用SqlConnection对象连接数据库.你的SQLServer计算机名为SerA.产品信息数据库名为SalesDB,包含产品信息的表名为Products.你用SQLServer用户账号WebApp,口令为Good123连接SalesDB.你需要设置SqlConnection对象的ConnectionString属性.你该用哪个字符串
A. ";Provider=SQLOLEDB.1;File Name ="Data/MyFile.udl
B. ";Provider=MSDASQL;Data Source=SerA;Initial Catalog=SalesDB;User ID=WebApp;Password= Good123"
C. "Data Source= SerA;Initial Catalog=SalesDB; User ID=WebApp;Password= Good123"
D. "Data Source= SerA;Database=SalesDB;Initial File Name=Products; User ID=WebApp;Pwd= Good123"
答案:C
65
利用ASP.NET 和 ADO.NET为TestKing创建一个统计应用程序.编写代码在每个月的月末运行一组存储过程对数据库进行提交操作.使用OleDbConnection对象连接到数据库. 使用OleDbCommand 来运行存储过程.在运行任一存储过程时若产生错误,必须对提交的数据更改实行回滚,只有所有的提交操作都成功才能接受更改.在存储过程执行期间若有错误产生,编写代码来捕获OleDbException.
请选择如何做:
在运行存储过程前调用OleDbConnection对象的 BeginTransaction方法,若有错误产生,使用OleDbConnection对象回滚所作的更改.
B. 在运行存储过程前调用OleDbConnection对象的 BeginTransaction方法,若有错误产生,使用OleDbException对象回滚所作的更改.
C.使用OleDbConnection对象的 BeginTransaction方法建立一个OleDbTransaction对象,给OleDbCommand 对象的Transaction属性赋值为OleDbTransaction对象.若有错误产生,使用OleDbTransaction对象回滚所作的更改.
D. 使用OleDbConnection对象的 BeginTransaction方法建立一个OleDbTransaction对象, 给每一个存储过程传递一个OleDbTransaction对象的引用,使用存储过程中的错误处理来回滚所作的更改.
答案: C
66
创建一个ASP.NET应用程序,采用基于角色的安全性来允许用户访问那些他们有权访问的页面.你用Microsoft SQLServer数据库来管理用户和角色的列表.Roles表有RoleID和RoleName两列.表User有UserID,UserName和Password三列.UserRoles表有UserID和RoleID.你需要创建一个存储过程来返回属于某特定的角色的所有用户,你写了如下的SQL存储过程:
Create PROCEDURE GetRoleMembers
@RoleID int
AS
采用哪个代码段来完成此存储过程
A. Select UserRoles.UserID, User.UserName
FROM User
INNER JOIN
Roles UserRoles On UserRoles.RoleID = User.UserID
Where UserRoles.RoleID = @RoleID
B. Select UserRoles.UserID, User.UserName
FROM UserRoles
INNER JOIN
Roles On UserRoles.RoleID = Roles.RoleID, User
Where UserRoles.RoleID = @RoleID
C. Select UserRoles.UserID, User.UserName
FROM UserRoles
INNER JOIN
User On User.UserID = UserRoles.UserID
Where UserRoles.RoleID = @RoleID
D. Select User.UserID. User.UserName
FROM User, UserRoles
INNER JOIN
Roles On UserRoles.RoleID = Roles.RoleID
Where UserRoles.RoleID = @RoleID
答案:C
67
你正在创建ASP.NET页面来显示你选中项的详细描述.你写的SQL代码是从MicrosoftSQLServer数据库DB上查询和获取数据的.每一项的认证码存储在名为ItemID的String类型的变量中,你要查询的SQL语句存储在变量SQL中.你用下列代码来建立SQL查询:
SQL = "Select UnitsOnHand, UnitsOnOrder FROM Inventory"+ " Where ProductID = " + ItemID;
ProductID, UnitsOnHand和UnitsOnOrder 列在数据库中都是int类型,你用SqlDataReader对象reader来获取数据,你想把UnitsOnHand数量赋值给变量TKHand,你该用哪行代码
A. TKHand = reader.GetInt16(0)
B. TKHand = reader.GetInt16(1)
C. TKHand = reader.GetInt32(0)
D. TKHand = reader.GetInt32(1)
答案:C
68
创建一个ASP.NET页应用程序安装到intranet中.销售代表通过电话通知客户使用这个应用程序来连接到一个数据库.请求该页的客户的代码运行在安全上下文下,应用程序要求每个销售代表提供一个唯一的user name 和 password来访问.每个user names 和passwords被包含在用来连接数据库的ConnectionString 属性设置中,所有用户用同一访问权限来访问数据库.销售代表报告访问数据库要花很长时间,调试应用程序发现每一次一个销售代表连接到数据库都创建一个新的连接,想要重用连接以减少访问数据库的时间.
请选择:
A. 修改connection string 设置 Windows 集成验证
B. 修改connection string 增加connection timeout设置
C. 修改connection string为每一个连接到数据库的连接使用单个user name和password
D. 修改connection string使用一个login user, 该用户是sysadmin固定服务器角色中的一员
答案: C
69
创建一个ASP.NET页在可更新的 DataGrid控件上给用户显示数据,让用户在网格上更新数据.代码中使用System.Data名称空间和System.Data.OleDb名称空间.修改的数据存储在一个ADO.NET DataTable 对象中. 当用户完成修改后,用户的更改被储存到一个数据库中,以下的程序完成这个工作:
Public Shared Sub UpdateTestKData(_
ByVal sql As String,_
ByVal connectionString As String,_
ByVal dataTable As DataTable)
Dim da As New OleDb.OleDbDataAdapter()
Dim cnn As New OleDb.OleDbConnection(_
connectionString)
dataTable.AcceptChanges()
da.UpdateCommand.CommandText = sql
da.UpdateCommand.Connection = cnn
da.Update(dataTable)
da.Dispose()
End Sub
当用户编辑数据时,这个代码运行完,但并没有数据更新到数据库. 通过测试传给这个程序的connection string 和更新查询,两者都工作正确.需要更改代码以确保数据更改到数据库.
请选择:
A. 在调用Update 方法前增加以下两行代码:
Dim cb As New OleDb.OleDbCommandBuilder(da)
cd.GetUpdateCommand()
B. 在调用Update 方法前增加以下代码:
da.UpdateCommand.Connection.Open()
C. 删除以下代码:
dataTable.AcceptChanges()
D. 删除这行代码:
da.Dispose()
答案: C
70
创建一个ASP.NET应用程序,使用System.Data命名空间.该程序使用一个网页来编辑某种产品的价格,从一个数据库中一个名为TestKproductInfo的DataSet 对象检索产品的部件numbers, named和 prices信息,并把数据显示在网页上.使用网页来编辑一个或更多的prices, 并把更改存在TestKproductInfo中.通过点击一个Save按钮来保存数据更改.在Save按钮的点击事件处理中编写代码来把编辑的prices保存到数据库中.在进行update操作前想在productInfo 中抽出编辑的行.创建第二个名为productChanges的DataSet 对象来保存只有编辑的产品数据.请选择用来把编辑的数据行从productInfo拷贝至productChanges的代码
A. productChanges = _
TestKproductInfo.GetChanges(DataRowState.Detached)
B. productChanges = TestKproductInfo.GetChanges()
C. productChanges.Merge(TestKproductInfo, true)
D. productChanges.Merge(TestKproductInfo, false)
答案: B
71
应用程序所用的数据都存储在Microsoft SQL Server2000的数据库中.你预期会有很多的用户同时使用这个应用程序,当用户为报表获取数据时,你希望响应时间最优化.你写了一个程序来从数据库获得数据,有效的连接字符串保存在此程序的connString的变量中.需要在程序中添加代码来实现和数据库的连接,你将从如下的代码段中选择哪一个
A. Dim cnn As New OleDb.OleDbConnection(connString)
B. Dim cnn As New SqlClient.SqlConnection(connString)
C. Dim cnn As New ADODB.Connection()
D. Dim cnn As New SQLDMO.Database()
答案:B
72
应用程序的销售数据存储在Microsoft SQL Server 数据库并使用事务处理.应用程序由复杂的Transact-SQL语句组成.许多用户报告每天销售报表的产生要花更长的时间.需要减少响应的时间.请选择两种可能的办法来达到这个目的(每个正确的答案实现一个完整的解决办法)
A. 在SQL Server表中使用一个OleDbDataAdapter索引
B. 在SQL Server表中使用合适的索引
C. 重写SQL 语句为所有表名使用别名
D. 重写直接的SQL语句为存储过程,并从应用程序中调用存储过程
E. 当运行查询时在安全上下文中为用户配置查询(Configure queries)
答案: B, D
73
应用程序调用一个XML Web service运行.XML Webservice将返回一个ADO.NET DataSet对象,它包含一个公司清单.想要合并这个DataSet 对象到一个包含潜在客户的公司清单的DataSet对象中.指定wideWorld作为世界范围的进口商的 DataSet 对象名,指定customerProspects作为包含潜在客户的公司清单的DataSet对象名.合并以后,customerProspects将包含wideWorld中的公司名.两个DataSet对象包含的表具有相同的名字和主键.在两个DataSet对象中的表包含的列具有相同的名字和数据类型.在wideWorld的一个表中还包含附加的列并不想加到customerProspects中.如果customerProspects包含的任何表包含有未确定修改的行,当出现合并时,必须保留这些行的原始值.哪行代码被用来合并wideWorld 的DataSet对象到customerProspects的DataSet 对象
A. customerProspects.Merge (wideWorld, true, MissingSchemaAction.Ignore)
B. customerProspects.Merge (wideWorld, true, MissingSchemaAction.AddWithKey)
C. wideWorld.Merge (customerProspects, true, MissingSchemaAction.Ignore)
D. wideWorld.Merge (customerProspects, true, MissingSchemaAction.Add)
答案: A
74
开发一个应用程序,用户从一个名为TestKingSales的中心数据库检索信息.当数据返回到应用程序后,用户能够浏览,编辑,增加新记录,并可删除已有的记录.所有用户的更改必须能被存储到数据库.应用程序需要几个ADO.NET 对象一起来完成这些需要.使用System.Data 和 System.Data.OleDb命名空间中的类.首先写代码连接到数据库,然后执行下面哪4个步骤 请选择4个.
A. 创建一个OleDbDataAdapter 对象并定义SelectCommand属性
B. 创建一个OleDbCommand 对象 并使用ExecuteScalar 方法.
C. 创建一个DataTable 对象用来存储数据
D. 创建一个DataSet 对象用来存储数据
E. 调用DataAdapter.Fill 方法来填充 DataSet 对象
F. 调用DataAdapter.Update 方法 来填充DataSet 对象.
G. 调用DataAdapter.Update 方法把更改保存到数据库.
H. 调用DataSet.AcceptChanges 方法把更改保存到数据库.
答案: A, D, E, G
75
创建一个ASP.NET 财务应用程序,在Microsoft SQL Server 数据库TestKiDB.中存储和操作数据.应用程序的一个网页用来执行月底的操作,计算所有账户的余额.当用户网页上的一个按钮,要求代码能运行一些存储过程来计算月底的余额.必须保证所有计算的余额被保存到数据库前所有的过程必须成功.如果有任一过程失败,则不能存储任何的月底的计算余额.当过程运行时,用户不能进行编辑, 增加, 或删除受过程影响的表格.请选择:
A. 创建一个从System.EnterpriseServices.ServicesComponent 派生的类来运行存储过程.通过使用一个attribute的TransactionAttribute 类型注释类.
设置attribute的Value属性为TransactionOption.RequiresNew.
B. 创建一个master 存储过程.
使用这个master 存储过程来调用另一个存储过程来执行月底操作.
增加 WITH REPEATABLEREAD 到 master 存储过程.
C. 如果一个存储过程失败使用结构化异常处理来捕获一个SqlException.
使用SqlException的Procedure属性来声明存储过程产生的异常.
调用一个存储过程来保存过去的计算.
D. 设置一个SqlTransaction 对象的IsolationLevel 属性为IsolationLevel.Serializable.
给 SqlCommand 对象的Transaction 属性赋值为 SqlTransaction 对象
使用一个SqlCommand 对象运行存储过程
答案: D
76
创建一个ASP.NET页.使用该页来输入新产品的名称.每个名称保存在一个Microsoft SQLServer 数据库中. 名称数据库的表包含三个列.列名为EmployeeID 标识号会产生一个ProductID 产品标识号以增加一个名称到ASP.NET页.通过输入一个合适的EmployeeID和密码来登录.使用一个下拉列表框来选择一个ProductID并使用一个网格来输入产品的名称.数据库表有一个唯一索引包含EmployeeID,ProductID和产品名称列.唯一索引不允许同一产品的名称输入两次.使用一个SqlDataAdapter 对象插入名称到数据库.如果一个产品的名称重复, 数据库给程序返回一个错误.不想出现这种错误中断处理.要求代码能继续插入输入的已有的名称,也要求能访问一个名称列表,当出现错误时能够跳过.
请选择:
A. 在调用对象的Update 方法前设置 SqlDataAdapter 对象的ContinueUpdateonerror 属性为 True
B. 把调用SqlDataAdapter 对象的Update 方法放在一个try/catch 块
In the Catch code, 设置 对象's ContinueUpdate一个rror 属性为 True.
C.为SqlDataAdapter 对象的RowUpdated 事件创建一个事件处理器, 在事件处理器中,如果SqlRowUpdatedEventArgs 对象的 UpdateStatus属性有值为UpdateStatus.ErrorsOccured, 则设置SqlDataAdapter对象的ContinueUpdateonerror属性为True.
D. 为SqlDataAdapter 对象的RowUpdated 事件创建一个事件处理器,
在事件处理器中,如果 SqlRowUpdatedEventArgs 对象的Errors 属性的有一个非空值,设置SqlDataAdapter 对象的 ContinueUpdateonerror属性为True.
答案: A
77
应用程序使用从一个Microsoft SQL Server 数据库检索的数据.使用 SQL Server 连接池来优化性能,也为了以最小的管理成本来保证可靠的数据存储到服务器,需要为应用程序配置加密验证.请选择:
A. 在应用程序中使用Windows 验证,
在应用程序中以不同用户角色访问SQL Server 数据库.
B. 在应用程序中使用Windows 验证,
在应用程序中用户使用一个单一的Windows 账户来访问SQL Server 数据库
C. 在应用程序中使用基于窗体的验证
为用户访问SQL Server 数据库,使用系统管理员(sa) SQL Server login
D. 在应用程序中使用基于窗体的验证
为用户访问SQL Server 数据库,给每个用户一个不同的SQL Server login
答案: B
78
创建一个ASP.NET 应用程序,应用程序使用 integrated security从一个Microsoft SQL Server数据库名为TestKingOrder中检索数据.需要为应用程序提供一个连接字符串用来连接到TestKingOrder.打算把连接字符串存储在Web.config 文件中,该如何建立 Web.config 文件
A. 在 configuration 部分,创建一个element 名为 appSettings.
创建并增加 element ,它有一个key属性设为SQLConnection,一个value 属性设为connection string.
B. 在 configuration 部分, 创建一个element 名为SQLConnection.
创建一个key element ,它有一个value属性设为connection string.
C. 在 authorization部分, 创建一个element名为SQLConnection.
创建一个key element ,它有一个value 属性设为 connection string.
D. 在 authorization部分, 创建一个element名为appSettings.
创建一个element 名为SQLConnection ,它有一个value 属性设为connection string.
答案: A
79
ASP.NET应用程序使用户能创建新的销售订单, 销售订单存储在一个Microsoft SQL Server 数据库的表TestKingOrders中.该表有一标识列名为OrderID.使用一个DataTable 对象来管理管理订单数据.DataTable对象包含一列名为OrderNumber,使用SqlDataAdapter 对象的Update 方法来调用存储过程以把每个新订单插入到数据库.存储过程使用参数来返回每个订单的新OrderID值,给SqlDataAdapter对象指定一个SqlCommand 对象的InsertCommand属性,增加一个SqlParameter 对象到SqlDataAdapter的参数集合中,指定参数的名字各数据类型.需要设置SqlParameter 对象的属性来从数据库中检索新 orderID 值到DataTable对象的OrderNumber列.
请选择:
A. 设置 Direction属性为ParameterDirection.ReturnValue.
设置 SourceColumn 属性为 "OrderID".
B. 设置 Direction 属性为 ParameterDirection.ReturnValue.
设置 SourceColumn 属性为 "OrderNumber".
C. 设置 Direction 属性为 ParameterDirection.Output.
设置 SourceColumn 属性为 "OrderID".
D. 设置 Direction 属性为 ParameterDirection.Output.
设置 SourceColumn 属性为 "OrderNumber".
答案: D
80
你创建了一个ASP.NET页面,从Microsoft SQLServer数据库DB中获取产品信息.你想使产品清单显示在一个名为repeaterProducts的Repeater控件中.你的代码采用了System.Data命名空间和System.Data.SqlClient命名空间.你写了如下的程序来获取数据:
Private Sub RepeaterBind( _
ByVal ConnectionString As String, _
ByVal SQL As String)
Dim da As SqlDataAdapter
Dim dt As DataTable
da = New SqlDataAdapter(SQL, ConnectionString)
dt = New DataTable()
你需要添加代码,使从数据库中获得的数据填写repeaterProducts,你该采用哪个代码段
A.repeaterProducts.DataSource = dt
repeaterProducts.DataBind()
da.Fill(dt)
B.da.Fill(dt)
repeaterProducts.DataBind()
repeaterProducts.DataSource = dt
C.repeaterProducts.DataBind()
da.Fill(dt)
repeaterProducts.DataSource = dt
D.da.Fill(dt)
repeaterProducts.DataSource = dt
repeaterProducts.DataBind()
答案:D
81
创建一个ASP.NET 应用程序访问销售和市场数据.数据存储在一个Microsoft SQL Server 2000数据库中,想增加一个页来显示在AirportDB中调查数据,使用一个SqlConnection对象连接数据库,在DenverSrv上名为AirportSrv的SQL Server实例中创建一个连接字符串到 AirportDB .
使用哪一连接字符串
A. "Server=DenverSrv;Data Source=AirportSrv;
Initial Catalog=AirportDB;Integrated Security=SSPI"
B. "Server= DenverSrv;Data Source=AirportSrv;
Database=AirportDB;Integrated Security=SSP1"
C. "Data Source= DenverSrv/AirportSrv;Initial
Category=AirportSrv;
Integrated Security=SSP1"
D. "Data Source= DenverSrv/AirportSrv;Database=AirportDB;
Integrated Security=SSP1"
答案: D
82
创建一个ASP.NET页显示客户订单信息.这些信息显示在该页两个分开的DataGrid控件中,第一个DataGrid控件显示当年的orders,第二个DataGrid控件显示往年所有的orders.该页使用System.Data.SqlClient 命名空间和System.Data命名空间.信息存储在一个Microsoft SQL Server数据库中,一个客户的全部的order历史信息通过调用一个名为GetOrders的存储过程并传递客户的身份号作为一个参数来从数据库中获取.Page.Load 事件处理程序用GetOrders存储过程调用的结果填充一个名为TKDataView的DataView 对象,在Page.Load 事件处理程序中的下面代码段被用来绑定两个DataGrid控件到TKDataView:
dataGridCurrentYear.DataSource = TKDataView
TKDataView.RowFilter = "OrderDate >= #01/01/" & _
Now.Year & "#"
dataGridCurrentYear.DataBind()
dataGridPreviousYears.DataSource = TKDataView
TKDataView.RowFilter = "OrderDate < #01/01" & _
Now.Year & "#"
dataGridPreviousYears.DataBind()
Page.DataBind
测试期间,发现两个两个DataGrid控件只显示往年的order 信息,如何改正这个问题
A. 移去 Page.DataBind() 语句
B. 移去dataGridPreviousYears.DataBind() 语句
C. 在 Page.DataBind()语句前立即增加一个Response.Flush()语句
D. 在dataGridPreviousYears.DataBind()语句前立即增加一个Response.Flush()语句
答案: A
83
创建一个ASP.NET Web 窗体来显示一个DataSet 对象的雇员数据.要填充DataSet 对象 并想检索一个主键的值为1的雇员,写了以下代码:
(行号仅供说明用)
01 Dim conn as New _
SqlClient.SqlConnection(ConnectionString)
02 conn.Open()
03 Dim cmd As New SqlClient.SqlCommand( _
"Select * FROM Employees", conn)
04 Dim da As New SqlClient.SqlDataAdapter(cmd)
05 Dim ds As New DataSet()
06
07 da.Fill(ds, "Employees")
08
09 dr = ds.Tables("Employees").Rows.Find(1)
10 dr = ds.Tables("Employees").Rows.Find(1)
11 nameLabel.Text = dr.Item("Name").ToString()
运行代码, 第10行收到错误信息: "Table doesn't have a Primary Key",你确信在数据库的Employees表中已设置一个主键,想减少错误让代码能正确运行,也想捕获如果主键值为1的雇员被从数据库中删除可能出现的异常.
该采取哪两个方法 (每个方法完成部分功能)
A. 第06行增加以下代码
da.MissingSchemaAction = AddWithKey
B. 第06行增加以下代码
da.MissingSchemaAction = Add
C. 第06行增加以下代码
da.MissingSchemaAction = Ignore
D. 第06行增加以下代码
da.MissingSchemaAction = Error
E. 第07行放一个结构化异常处理模块
F. 第10 和 11行 放一个结构化异常处理模块
答案: A, F
84
创建一个ASP.NET 应用程序,使用一个Microsoft SQL Server 2000 数据库来存储 信息.应用程序允许一个用户根据某个数据来请示信息.在一DataGrid控件中显示用户的数据,且在只读窗体中显示.用户的数据用一个窗体级的字符串变量destinationCode来保存.在Page.Load事件处理器中创建一个SqlConnection 对象SqlConnection1,对它初始化并调用Open()方法.运行查询时,要求返回的数据尽可能的快,定义本地变量来保存destinationcode值:
Dim dest As String = destinationCode
请选择:
A. 创建一个存储过程GetDestinations 并使用以下代码来检索数据:
Dim cmd As SqlCommand = _
New SqlCommand("GetDestinations", _
sqlConnection1)
cmd.CommandType = CommandType.StoredProcedure
Dim parm As SqlParameter = _
New SqlParameter("@DestinationCode", dest)
cmd.Parameters.Add(parm)
dim sqlDataReader1 As SqlDataReader = _
cmd.ExecuteReader()
B. 创建一个存储过程GetDestinations 并使用以下代码来检索数据:
Dim qry As String = _
"EXEC GetDestinations Where DestID = " _
& "'" & dest & "'"
Dim da As SqlDataAdapter = _
New SqlDataAdapter (qry, sqlConnection1)
Dim ds As DataSet = New DataSet()
da.Fill(ds)
C. 使用以下代码来检索数据:
Dim qry As String = _
"Select * FROM Destinations Where DestID = " _
& "'" & dest & "'"
Dim cmd As SqlCommand = _
New SqlCommand(qry, sqlConnection1)
cmd.CommandType = CommandType.Text
Dim sqlDataReader1 As SqlDataReader = _
cmd.ExecuteReader()
D. 使用以下代码来检索数据:
Dim qry As String = _
"Select" * FROM Products Where DestID = @DestID"
Dim cmd As SqlCommand = _
New SqlCommand(qry, sqlConnection1)
cmd.CommandType = CommandType.Text
Dim parm As SqlParameter = _
New SqlParameter("@DestID", dest=
cmd.Parameters.Add(parm)
Dim SqlDataReader1 As SqlDataReader = _
cmd.ExecuteReader()
答案: A
85
创建一个ASP.NET 应用程序放在公司的Web服务器上,想要用最少的代价访问一个数据库. 请选择(多选):
A. 开始一个事务
B. 创建一个连接到数据库.
C. 使用adapter 对象创建一个数据集.
D. 使用数据集来显示数据或改变数据库的项目.
E. 从数据集Update到数据库.
F. 关闭数据库的连接.
G. 检查事务的错误
答案: B, C, D, E, F
86
应用程序允许用户从表Widgets中删除记录.该表有一个主键ComponentsID,Widgets表中的每行与另一表WidgetDetails中的行相关联,WidgetDetails表也有一个ComponentsID列,只要Widgets 中有一行被删除,WidgetDetails中相应的自动被删除.有以下代码:(行号仅供说明用)
01 Dim ColumnoneAs DataColumn
02 Dim columnTwo As DataColumn
03 Dim myRelation As DataRelation
04 Columnone= MyDataSet.Tables("Widgets").Columns("ComponentsID")
05 columnTwo = MyDataSet.Tables("WidgetDetails").Columns("ComponentsID")
06
07 MyDataSet.Relations.Add(myRelation)
第06行将用以下哪个代码代替
A. myRelation = New DataRelation(MyDataSet.Tables("Widgets"), Columnone,columnTwo)
B. myRelation = New DataRelation("WidgetsWithComponents", Columnone, columnTwo)
C. myRelation = New ForeignKeyConstraint(MyDataSet.Tables("Widgets"),Columnone, columnTwo)
D. myRelation = New ForeignKeyConstraint("WidgetsWithComponents", Columnone,columnTwo)
答案: B
87
编写代码,在一个事务中执行两个命令strCom1和 strCom2,已写以下代码. (行号仅供引用)
01 Dim transMain as SqlTransaction = connMain.BeginTransaction
02 Dim cmdMain as SqlCommand = New SqlCommand
03
04 cmdMain.CommandText = strCom1
05 cmdMain.ExecuteNonQuery()
06 cmdMain.CommandText = strCom2
07 cmdMain.ExecuteNonQuery()
08 transMain.Commit
09 connMain.Close
第03行将用以下哪个代码
A. transMain.Save
B. transMain.RollBack
C. cmdMain.Connection = connMain
D. cmdMain.Transaction = transMain
答案: D
88
下面哪些是有效的SqlTransaction类的方法 (选择所有正确的答案)
A. Commit
B. Terminate
C. Save
D. Close
E. Rollback
答案: A, C, E
89
用VisualStudio .NET IDE创建一个ASP.NET 应用程序,程序将升级SQL 6.5 servers 到Microsoft SQL2000.用户查询数据时想要使响应时间最少,创建一个过程来检索数据库,想增加连接到数据库的过程的代码,使用以下哪个代码段
A. Dim connection1 As New OleDb.OleDbConnection(connString)
B. Dim connection1 As New SqlClient.SqlConnection(connString)
C. Dim connection1 As New ADODB.Connection()
D. Dim connection1 As New SQLDMO.Database()
答案: B
90
开发一个ASP.Net 应用程序,应用程序每天有成千上万人使用.有一个操作要求,服务器对每个用户的请求在5秒内响应,并且连接池中使用不超过50个连接.
使用以下哪个连接字符串
A
"user id=sa;password=a1b2c3;initial catalog=MyDB;" _
& "data source=myServer;Connection Lifetime=5;" _
& "Max Pool Size=50"
B
" user id=sa;password=a1b2c3;initial catalog=MyDB;" _
& "data source=myServer;Connection Lifetime=5;" _
& "Min Pool Size=50"
C
" user id=sa;password=a1b2c3;initial catalog=MyDB;" _
& "data source=myServer;Connection Timeout=5;" _
& "Min Pool Size=50"
D
" user id=sa;password=a1b2c3;initial catalog=MyDB;" _
& "data source=myServer;Connection Timeout=5;" _
& "Max Pool Size=50"
答案: D
91
开发一个Windows应用程序访问一个Microsoft SQL Server 数据库TestKing1.当运行应用程序时用户必须提供一个user name 和 password,该信息用来 动态建立一个连接字符串.测试应用程序,发现并没有使用SqlClient连接池特性.必须减少检索信息所用的时间.该如何修改连接字符串
A. 当连接到TestKing1 数据库时使用Windows 用户logon.
B. 当连接到TestKing1 数据库时使用SQL Server login.
C. 连接到TestKing1 数据库时对每个连接使用同一应用程序logon ID 和password.
D. 连接到TestKing1 数据库时对每个连接使用guest login ID 和password.
答案: C
92
开发一个Windows应用程序来计算雇员的休假数据并将它们显示在 DataGrid控件中. 这些数据被一个名为employeeDataSet 的DataSet 对象本地管理.需要写一段代码来使用户可以按照雇员的部门来给数据排序,该使用哪段代码
A. Dim dvDept As New DataView()
dvDept.Table = employeeDataSet.Tables(0)
dvDept.Sort = "ASC"
DataGrid1.DataSource = dvDept
B. Dim dvDept As New DataView()
dvDept.Table = employeeDataSet.Tables(0)
dvDept.Sort = "Department"
DataGrid1.DataSource = dvDept
C. Dim dvDept As New DataView()
dvDept.Table = employeeDataSet.Tables(0)
dvDept.ApplyDefaultSort = True
DataGrid1.DataSource = dvDept
D. Dim dvDept As New DataView()
dvDept.Table = employeeDataSet.Tables(0)
dvDept.ApplyDefaultSort = False
DataGrid1.DataSource = dvDept
答案: B
93
开发一个客户信息应用程序,使用户可以在一个Windows窗体里查看和更新客户信息.应用程序使用一个DataTable对象和一个DataAdapter对象来管理数据并与一个中央数据库进行交互,应用程序必须满足以下要求:当一个用户完成一系列改动后,这些改动必须写到数据库中,储存在DataTable 对象中的数据必须能够指出数据库更新已结束.应该使用哪个代码
A. DataTable.AcceptChanges()
DataAdapter.Update(DataTable)
B. DataAdapter.Update(DataTable)
DataTable.AcceptChanges()
C. DataTable.Reset()
DataAdapter.Update(DataTable)
D. DataAdapter.Update(DataTable)
DataTable.Reset()
答案: B
94
开发一个Windows 应用程序与一个Microsoft SQL Server 数据库交互.应用程序通过调用以下存储过程向数据库插入新行.(行号仅供引用)
01 Alter PROCEDURE dbo.sp_UpdateTestKingPrice
02 (
03 @category int,
04 @totalprice m一个y OUTPUT
05 (
06 AS
07 SET NOCOUNT ON
08 Update Products SET UnitPrice = UnitPrice * 1.1
Where CategoryID = @category
09 Select @totalprice = sum(UnitPrice) FROM Products
10 Select ProductName FROM Products
Where CategoryID = @category
11 RETURN @totalprice
应用程序使用SqlCommand 对象的ExecuteReader 方法调用存储过程并创建一个SqlDataReader对象.存储过程运行后,代码必须检查SqlDataReader.RecordsAffected属性为被成功更新的记录的正确数量.然而当执行存储过程时, SqlDataReader.RecordsAffected 属性总返回-1.
如何解决这个问题
A. 第7行改为
SET ROWCOUNT 0
B. 第7行改为
SET NOCOUNT OFF
C. 第11行改为
RETURN 0
D. 第11行改为
RETURN @category
答案: B
95
开发一个Windows 应用程序来访问一个Microsoft SQL Server数据库.应用程序包含一个窗体Customer窗体,窗体有一个Button控件SortButton.数据库包含一个表Customers,表中的数据将通过一个DataGrid控件DataGrid1显示在Customer窗体上. 下面代码段用来填充DataGrid1:
Private Sub FillDataGrid()
Dim oConn As New SqlConnection(MyConString)
Dim oDA As New SqlDataAdapter( _
"Select CustomerID, CompanyName, ContactName, " & _
";Ph一个FROM Customers", oConn)
Dim oDS As New DataSet()
oDA.MissingSchemaAction = MissingSchemaAction.AddWithKey
oDA.Fill(oDS, "Customers")
Dim oDV As New DataView(oDS.Tables("Customers"))
oDV.Sort = "CustomerName ASC, ContactName ASC"
oDV.ApplyDefaultSort = True
DataGrod1.DataSource = oDV
End Sub
Customers 的主键是CustomerID 列. 为确保当用户选择SortButton时数据按主键升序显示.
请选择:
A. 设置DataView 对象的Sort属性为一个空字符串
B. 设置DataView 对象的ApplyDefaultSort属性为False.
C. 当创建DataAdapter对象时在Select 语句中包含一个ORDER BY.
D. 设置DataView 对象的RowFilter 属性为 CustomerID.
答案: A
96
开发一个Windows应用程序使用户可以更新客户信息.当用户在查看和编辑客户信息时应用程序使用DataSet对象来保持客户数据.当用户结束对数据的更新时,应用程序使用DataSet.WriteXml方法来创建一个XML数据文件.这个XML数据文件的根元素的标签名称必须是.添加一些代码以确保这个标签名称设置正确.应使用哪段代码
A. dsCustomer.namespace = "TestKingCustomerInfo"
B. dsCustomer = New DataSet("TestKingCustomerInfo")
C. dcCustomer.Prefix = "TestKingCustomerInfo"
D. dsCustomer.WriteXml("TestKingCustomerInfo")
答案: A
97
开发一个Windows 应用程序,包含一个类TestKingContact.TestKingContact 使用 ADO.NET与一个Microsoft SQL Server 数据库交互.TestKingContact使用时,需要一个连接到数据库的活动连接.为保证由TestKingContact使用的资源在该类停止使用时能尽快被释放.
请选择:
A.在连接中, 创建一个子过程Finalize来重写 System.Object.Finalize.
在Finalize子过程中放置清除代码并调用MyBase.Finalize.
B. 在连接中, 创建一个子过程Closed.
在Closed子过程中放置清除代码.
实现Idisposable接口的Dispose方法
在实现的Dispose 方法中放置清除代码.
在释放引用前调用窗体的Dispose 方法.
D. 如果有System.Windows窗体接口实现 Finalize 方法.
在实现的Finalize方法中放置清除代码.
在释放引用前调用窗体的Dispose 方法.
答案: C
98
开发一个Windows应用程序名为Payroll.应用程序从名为dataFile 的XML数据文件中接受信息.这个文件不包括任何schema 信息,需要写一些代码以将XML 数据装载到一个对象中.该使用哪一段代码
A. Dim ds As New DataSet(";PayrollData")
ds.readXml(dataFile, _
XmlReadMode.IgnoreSchema)
B. Dim ds As New DataSet(";PayrollData")
ds.readXml(dataFile,
XmlReadMode.InferSchema)
C. Dim ds As New DataSet(";PayrollData")
ds.readXml(dataFile, _
XmlReadMode.ReadSchema)
D. Dim ds As New DataSet(";PayrollData")
ds.readXml(dataFile, _
XmlReadMode.Fragment)
答案: B
99
开发一个包含搜索功能的Windows应用程序,用户可以在一个文本框里输入字符,按照客户的姓名来搜索对应的客户信息.为了方便,用户应该可以只输入客户姓名的头几个字母就执行搜索.为实现这个功能,应用程序应该接受用户输入并将其储存在一个名为TKName的变量里,然后向中央数据库发起一个SQL查询,如何写这个查询的代码
A. SQL = "Select PersonalName, FamilyName FROM " & _
"Customers Where FamilyName = '" & TKName & "%'"
B. SQL = "Select" PersonalName, FamilyName FROM " & _
"Customers Where FamilyName LIKE '" & TKName & "%'"
C. SQL = Select PersonalName, FamilyName FROM " & _
"Customers Where FamilyName = '" & TKName & "*'"
D. SQL = "Select PersonalName, FamilyName FROM " & _
"Customers Where FamilyName LIKE '" & TKName & "*'"
答案: B
100
开发一个Windows应用程序连接到一个Microsoft SQL Server 数据库.当用户执行存储过程时有时会发生错误.需要在应用程序添加错误处理代码以获得导致错误的存储过程的详细信息.该使用哪一段代码
A. Try
TestKingConnection.Open()
Catch e As Exception
'Insert error-handling code.
End Try
B. Try
TestKingConnection.Open()
Catch e As SqlException
'Insert error-handling code.
End Try
C. Try
TestKingConnection.Open()
Catch e As DataException
'Insert error-handling code.
End try
D. Try
TestKingConnection.Open()
Catch e As DBConcurrencyException
'Insert error-handling code.
End Try
答案: B