30、数据集对象dsNorthwind 包含两个表,表名分别为"Customers"和"Orders"。执行下列语句:
dsNorthwind.Relations.Add( "FK_CustomersOrders", dsNorthwind.Tables["Customers"].Columns["CustomerID"],
dsNorthwind.Tables["Orders"].Columns["CustomerID"], false);
该语句运行结果有____________。 (A)
A. 为dsNorthwind 创建了表"Customers"和"Orders"之间的导航关系
31、DataSet 对象ds 中,数据表对象Customers 的表名为"Customers",其表结构如下:
列名 | 类型 | 列序号 |
CustomerID | int | 0 |
CompanyName | string | 1 |
Address | string | 2 |
City | string | 3 |
则下列向该表添加一行新数据的语句是否正确?
object[] row = { "ATA","A8","Beijing",1}; ds.Tables["Customers"].Rows.Add(row); (B)
A. 正确 B. 错误
32、DataSet 对象ds 中,数据表对象Customers 的表名为"Customers",其表结构如下:
列名 | 类型 | 列序号 |
CustomerID | int | 0 |
CompanyName | string | 1 |
Address | string | 2 |
City | string | 3 |
该表有300 条记录,其中有一些刚刚被标记为删除。我们希望从表中查找所有已经标记为删除的、来自London 的客户信息,并将结果以City 列递减排序放入一个DataRow 数组中。则执行下列______语句可以完成此目标。 (B)
B.DataRow[] selRows = Customers.Select("City = 'London'", "City DESC",DataViewRowState.Deleted);
33、DataView 对象的特性有:(AD)
A. DataView 只能访问单个DataTable 表 B. DataView 可以作为连接两个相关表的手段
C. DataView 不能进行排序 D. DataView 可以根据记录的版本、状态进行筛选
34、一般情况下,我们可以从代表DataSet 数据的XML 文件中推断出DataSet 的架构。然而,我们需要使用XSD 架构的原因有:(AB)
A. 避免从XML 文件推断DataSet 架构造成的额外开销
B. 推断出的架构无法达到与XSD 架构同等的细节水平
35、在某XSD 文件中,有以下代码片断:
<xs:element name="类别"><xs:complexType><xs:sequence>
<xs:element name="类别_ID" msdata:AutoIncrement="true" type="xs:int" />
<xs:element name="类别名称" type="xs:string" minOccurs="0" />
</xs:sequence></xs:complexType></xs:element>其中,标记<xs:sequence>的作用是:(D)
C. “类别”元素下的两个子元素是可选的 D. 要求“类别”元素下的两个子元素必须以指定的顺序出现。
36、Dataset1 为一数据集对象,语句 Dataset1.ReadXml("F:/Dataset1.XML",XmlReadMode.ReadSchema); 的作用是:(A)
A. 若Dataset1 已经包含架构,则将所有由XML文件内部架构定义的新表加入Dataset1,然后向Dataset1 加载数据;
37、为了只把DataSet 对象MyDS 的数据修改情况写入文件"F:/ MyDS.XML"中,以备在网络可用时更新到数据库中,可执行 (E)
E. MyDS.WriteXml("F:/MyDS.XSD",XmlWriteMode.DiffGram);
38、目前在ADO.NET 中可以使用与下列哪些数据源相关的DataAdapter?(ABC)
A. SQL Server .NET 数据源 B. OLE DB .NET 数据源 C. XML 文件 D. ODBC .NET 数据源
39、DataAdapter 对象使用与______属性关联的Command 对象将DataSet 修改的数据保存入数据源。 (C)
A. SelectCommand B. InsertCommand C. UpdateCommand D. DeleteCommand
40、在使用DataAdapter 作为从数据源到DataSet 的通道时,可能遇到数据源和DataSet架构不匹配的情况。DataAdapter 使用________对象处理该情况。 (C)
A. UpdateCommand B. DataBindings C. TableMappings D. XSD 架构文件
41、已知有如下变量:
string strConn1 = “Provider=SQLOLEDB;Data Source=(local)\NetSDK;”+“Initial Catalog=Northwind”;
string strConn2 = “Data Source=(local)\NetSDK;”+
“Initial Catalog=Northwind;Provider=SQLOLEDB”;
string strSql1 = “SELECT * FROM Customers”;
string strSql2 = “SELECT * FROM Orders”;
有下列3 组语句:
1. OleDbDataAdapter da1 = new OleDbDataAdapter(strSql1,strConn1);
OleDbDataAdapter da2 = new OleDbDataAdapter(strSql2,strConn1);
调用da1、da2 将数据下载到数据集
2. OleDbDataAdapter da1 = new OleDbDataAdapter(strSql1,strConn1);
OleDbDataAdapter da2 = new OleDbDataAdapter(strSql2,strConn2);
调用da1、da2 将数据下载到数据集
3. OleDbConnection conn = new OleDbConnection(strConn1);
OleDbDataAdapter da1 = new OleDbDataAdapter(strSql1,conn);
OleDbDataAdapter da2 = new OleDbDataAdapter(strSql2,conn);
调用da1、da2 将数据下载到数据集,则执行效率最低的一组语句是__B_. A. 1 B. 2 C. 3 D. 都一样
42、为了提高性能,在使用DataAdapter 填充DataSet 前,可以将_____属性值设为false. (A)
A. DataSet 对象的EnforceConstraints B. DataSet 对象的CaseSensitive
43、为了控制DataAdapter 的Fill 方法如何在填充数据之前向DataSet 加载数据源架构信息,可在调用该方法前,将DataAdapter 的MissingSchemaAction 属性设为______,使得Fill 方法在填充数据前,向DataSet 架构添加额外的表和列,并且给DataTable添加主键信息。(B)
A. Add B. AddWithKey C. Error D. Ignore
44、da 为DataAdapter 对象,其SeclectCommand 的查询字符串为: Select * From Customers
da的TableMappings 集合中包含一个DataTableMapping 对象,如下代码所示:
DataTableMapping dcm=da.TableMappings.Add("Customers","dtCustomers");
dcm.ColumnMappings.Add("CustomerID","dtCustomerID");
dcm.ColumnMappings.Add("CustomerName","dtCustomerName");
dcm.ColumnMappings.Add("Address","dtAddress");
数据集ds 中已包含一个名为dtCustomers 的数据表,该表包含3 个数据列,列名分别为dtCustomerID、dtCustomerName、dtAddress ;另一方面,数据库中包含一个名为Customers 的数据表,该表包含3 个数据列,列名分别为CustomerID、CustomerName、Address。请问,若调用以下代码结果如何?da.FillSchema(ds,SchemaType.Source,"Customers"); (D)
D. 目标数据集中包含2 个数据表,表名"Customers"、"dtCustomers"
45、在ADO.NET 编程中,能否使用一个DataAdapter 对象向多个DataTable 填充数据?(B)
A. 可以 B. 不可以
46、在DataSet 中,若修改某一DataRow 对象的任何一列的值,该行的DataRowState 属性的值将变为___ (D)
C. DataRowState.Detached D. DataRowState.Modified
47、myDataSet 是一数据集对象,其中包含通过DataAdapter 从数据库检索的构架和数据。在本地对myDataSet 进行修改后,调用下列语句:DataSet changes = myDataSet.GetChanges();
获得的新的数据集changes 将包含原数据集中状态为______的数据行。 (ABD)
A. Added B. Deleted C. Detached D. Modified E. Unchanged
48、DataAdapter 对象的DeleteCommand 的属性值为null,将造成:(C)
C. DataAdapter 在处理DataSet 中被删除的行时,将引发异常
49、DataAdapter 对象的Update 查询语句中, 使用下列哪种Where 子句可以保证本行的更新不会覆盖其他用户的更改。 (ACD)
A. 包含数据源所有的列 B. 只包含主键列 C. 包含主键列和一个时戳列 D. 包含主键列和已修改列
50、如果远端的XML Web Service进行了安全性设置,要求调用这必须经过身份验证,则在客户端代码中应该包含_______。 (B)
A. 创建用户名和密码的代码 B. 将客户端凭据传递给XML Web Service 的代码
51、.NET构架中被用来访问数据库数据的组件集合称为: (B)
A. ADO B. ADO.NET C. COM+ D. Data Service.NET
52、在ADO.NET 中,执行数据库的某个存储过程,则至少需要创建________并设置它们的属性,调用合适的方法: (A)
A. 一个Connection 对象和一个Command 对象 B. 一个Connection 对象和DataSet 对象
53、dataTable 是数据集myDataSet 中的数据表对象,有9 条记录。调用下列代码后,dataTable 中还有几条记录? dataTable.Rows[8].Delete(); (A) A. 9 B. 8 C. 1 D. 0
54、在ADO.NET中,为了确保DataAdapter对象能够正确地将数据从数据源填充到DataSet中,则必须事先设置好DataAdapter对象的下列哪个Command属性? (D)
A. Delete Command B。Update Command C。Insert Command D。Select Command
55、为使用OleDb .NET Data Proviver连接到SQL Server 2000数据库,应将Connection对象的ConnectionString属性中的Provider子属性的值设置为: (A)
A. Provider=SQLOLEDB B. Provider=SQLSERVER
56、在使用ADO.NET编写连接到SQL Server 2000数据库的应用程序时,从提高性能的角度考虑,应创建____类的对象, 并调用其Open方法连接到数据库: (B)
A.OleDbConnection B。SqlConnection C。OdbcConnection D。Connection
57、在使用ADO.NET 设计数据库应用程序时,可通过设置Connection 对象的_______属性来指定连接到数据库时的用户和密码信息。 (A) A. ConnectionString B. DataSource C. UserInformation D. Provider
58、使用名为TKorderEntry 的DataSet 对象开发一个管理某项目的数据,TkorderEntry对象有两个名为orderNames和OrderDetails的DataTable对象,在两个DataTable间定义一个名为orderDetailsKey 的ForeignKeyConstraint对象。想要在orderNames中删除一行,由于它与OrderDetails 表中的行相关联,会产生异常。出现问题最可能的原因是: (D)
D. OrderDetails.KeyDeleteRule的当前值是Rule.None.
59、你正在创建一个ASP.NET 应用程序来追踪一家公司的销售订单.此应用程序用的是ADO.NET DataSet 对象,DataSet 包含了两个DataTable 对象.一个表的名字为Orders,另一个表名为OrderDetails.来自Orders 表的数据显示在列表框中,你希望当用户在列表框中选择了Orders 表的信息时,它相应的Order details 就会显示在Grid 中。你想修改这些对象使你的代码能够找到你选择的订单的所有order details 信息,你该? (A)
A.在DataSet 对象的Relations 集合中添加一个DataRelation 对象
60、开发一个用DataGrid控件来显示产品的分类列表的ASP.NET程序,产品数据存放在名为TestKingProducts的 Microsoft SQL Server 数据库中,每一个产品有一数值变量 ProductID和字符变量 ProductName。利用SqlDataAdapter 对象和 SqlCommand 通过存储过程来检索数据库中的产品数据,设置SqlCommand 对象的CommandType 属性为CommandType.StoredProcedure,设置 CommandText 属性为 procProductList。 产品列表通过由ProductID降序分类填充到一个DataTable对象中,要求数据通过ProductName按字母倒序显示。 请选择: (B)
B. 创建一个基于DataTable 对象的DataView 对象,设置DataView对象的Sort属性为 “ProductName DESC”. 绑定 DataGrid控件至DataView对象。
61、使用Microsoft SQL Server .NET Data Provider连接到某个数据库.数据库管理员报告,由于应用程序的超量使用,等待建立新连接的用户的数据请求被中止,通过设置最小连接池数为10来改进请求通过的能力. (C)
C. 在连接字符串中增加一个Min Pool Size属性,设置连接池的最小数量为10。
62、你正在为你的公司创建一个ASP.NET的应用程序。公司的数据都存储在Microsoft SQLServer 6.5数据库中。你的应用程序能产生一个上百万行的基于transaction表的交易帐目汇总报表,你希望你的应用程序能够尽可能快的返回汇总报表。你该如何做,使应用程序与数据库连接检索数据? (B)
B.用OleDbConnection对象连接数据库,用OleDbCommand对象运行存储过程来返回数据
63、创建一个从Microsoft SQL Server 数据库中检索数据的ASP.NET页。在SQL Server数据库中创建一个名为GetYTDSales的方法用来运行存储过程。存储过程定义一个指定产品的输入参数并返回整年产品的销售数据。在GetYTDSales方法中声明一数字变量,把存储过程的返回值赋给该变量。请选择: (C)
C.创建一个SqlDataAdapter对象,调用它的ExecuteScalar方法来运行存储过程并把整年产品的销售数据赋给该数字变量。
64、创建ASP.NET页面来显示产品的清单。产品的信息存储在Microsoft SQL Server数据库上。你用SqlConnection对象连接数据库。你的SQL Server计算机名为SerA。产品信息数据库名为SalesDB,包含产品信息的表名为Products。你用SQL Server用户账号WebApp,口令为Good123连接SalesDB。你需要设置SqlConnection 对象的ConnectionString属性。你该用哪个字符串?(C)
C. “Data Source= SerA;Initial Catalog=SalesDB; User ID=WebApp;Password= Good123”
65、利用ASP.NET 和 ADO.NET为TestKing创建一个统计应用程序。编写代码在每个月的月末运行一组存储过程对数据库进行提交操作。使用 OleDbConnection 对象连接到数据库。 使用OleDbCommand 来运行存储过程。在运行任一存储过程时若产生错误,必须对提交的数据更改实行回滚,只有所有的提交操作都成功才能接受更改。 在存储过程执行期间若有错误产生,编写代码来捕获OleDbException..请选择: (C)
C. 使用OleDbConnection对象的 BeginTransaction方法建立一个OleDbTransaction对象,给OleDbCommand 对象的Transaction 属性赋值为OleDbTransaction对象。若有错误产生,使用OleDbTransaction对象回滚所作的更改。
66、创建一个ASP.NET应用程序,采用基于角色的安全性来允许用户访问那些他们有权访问的页面。你用Microsoft SQL Server数据库来管理用户和角色的列表。Roles表有RoleID和RoleName两列。表User有UserID,UserName和Password三列。UserRoles表有UserID和RoleID。你需要创建一个存储过程来返回属于某特定的角色的所有用户,你写了如下的SQL存储过程:Create PROCEDURE GetRoleMembers @RoleID int AS
采用哪个代码段来完成此存储过程? (C)
C. SELECT UserRoles.UserID, User.UserName FROM UserRoles INNER JOIN
User On User.UserID = UserRoles.UserID WHERE UserRoles.RoleID = @RoleID
67、你正在创建ASP.NET页面来显示你选中项的详细描述。你写的SQL代码是从MicrosoftSQL Server数据库DB上查询和获取数据的。每一项的认证码存储在名为ItemID的String类型的变量中,你要查询的SQL 语句存储在变量SQL中。你用下列代码来建立SQL查询:SQL = “SELECT UnitsOnHand, UnitsOnOrder FROM Inventory”+ “ WHERE ProductID = “ + ItemID;
ProductID, UnitsOnHand和UnitsOnOrder 列在数据库中都是int类型,你用SqlDataReader对象reader来获取数据,你想把UnitsOnHand数量赋值给变量TKHand,你该用哪行代码?(C)
C. TKHand = reader.GetInt32(0) D. TKHand = reader.GetInt32(1)
68、创建一个ASP.NET页应用程序安装到intranet中/销售代表通过电话通知客户使用这个应用程序来连接到一个数据库.请求该页的客户的代码运行在安全上下文下,应用程序要求每个销售代表提供一个唯一的user name 和 password来访问。每个user names 和 passwords被包含在用来连接数据库的ConnectionString 属性设置中,所有用户用同一访问权限来访问数据库.销售代表报告访问数据库要花很长时间,调试应用程序发现每一次一个销售代表连接到数据库都创建一个新的连接,想要重用连接以减少访问数据库的时间。(C)
C. 修改connection string为每一个连接到数据库的连接使用单个user name和password
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 和更新查询,两者都工作正确。需要更改代码以确保数据更改到数据库。请选择: (C)
C. 删除以下代码:dataTable.AcceptChanges() D. 删除这行代码:da.Dispose()
70、创建一个ASP.NET 应用程序,使用System.Data命名空间。该程序使用一个网页来编辑某种产品的价格,从一个数据库中一个名为TestKproductInfo的DataSet 对象检索产品的部件numbers, named 和 prices信息,并把数据显示在网页上。使用网页来编辑一个或更多的 prices, 并把更改存在TestKproductInfo中。通过点击一个Save 按钮来保存数据更改。在Save按钮的点击事件处理中编写代码来把编辑的prices保存到数据库中。在进行update操作前想在productInfo 中抽出编辑的行.创建第二个名为productChanges的DataSet 对象来保存只有编辑的产品数据.请选择用来把编辑的数据行从productInfo拷贝至productChanges的代码? (B)
B. productChanges = TestKproductInfo.GetChanges()