您的当前位置:首页正文

数据库系统开发考试题目

2020-07-28 来源:华佗小知识
考试题型:

1、单项选择13*2=26 2、判断7*2=14 3、填空10*1=10 4、简答6*6=36

5、综合(6+4+4=14) 简答复习

P36 习题14、6、9

P60 习题2、4、7、8、9 P84 习题4、5、9、11

P124 习题1、2、4、5、6、7、10、12 P176 习题1、2、3、4、5、8、9 P229 习题1、2 P279 习题1、3、6 综合复习

第1小题关于数据表的建立(含字段定义,实体完整性,参照完整性,用户自定义完整性说明)

第2小题为写出程序运行结果 第3小题为归纳函数功能

一、单选题(每题 2分,共26分)

1、打开代码编辑器的功能键是( C、F7 ) 2、加载窗体时触发的事件是( D、Load )

3、关闭任一个窗体并结束应用程序的语句是(C、Close)

4、若有语句:label1.Text=″C#.NET″;默认情况下,在执行本语句之前标签控件的Name属性和Text属性的值分别为:( C、″label1″、″label1″ ) 9、设置计时器时间间隔的属性是( C、Interval ) 10、设置控件Tab键顺序的属性是(B、TabIndex)

11、要创建多文档应用程序,需要将窗体的(D、IsMdiContainer )属性设为true。 15、在ADO.NET中,表示程序到数据的连接的对象为(A、 Connection). A 2.StreamWriter对象的下列方法,可以向文本文件写入一行带回车和换行的文本的是( )。 A.WriteLine() B.Write() C.WritetoEnd() D.Read() A 4.在C#.Net中,用来创建主菜单的对象是(C.MenuStrip )。

5.下面所列举的应用程序中,不是多文档应用程序的是( D.记事本 ) D 22.在VC#.Net中,可以标识不同的对象的属性是(B.Name )。 B 7.改变窗体的标题,需修改的窗体属性是 (A. Text )。

1.在对SQL Server 数据库操作时应选用(a)SQL Server .NET Framework 数据提供程序; 2.下列选项中,(c string类型)是引用类型。

3.关于ASP.NET中的代码隐藏文件的描述正确的是()

a)Web窗体页的程序的逻辑由代码组成,这些代码的创建用于与窗体交互。编程逻辑唯一与用户界面不同的文件中。该文件称作为“代码隐藏”文件,如果用C#创建,该文件将具有“.ascx.cs”扩展名。

b)项目中所有Web窗体页的代码隐藏文件都被编译成.EXE文件。

c)项目中所有的Web窗体页的代码隐藏文件都被编译成项目动态链接库(.dll)文件。

d)以上都不正确。

4.以下描述错误的是(a,b)

a)在C++中支持抽象类而在C#中不支持抽象类。

b)C++中可在头文件中声明类的成员而在CPP文件中定义类的成员,在C#中没有头文件并且在同一处声明和定义类的成员。

5.C#的数据类型有(b)b)值类型和引用类型;

6.下列描述错误的是(d)d)一个类可以有多个基类和多个基接口; 7.在DOM中,装载一个XML文档的方法(b)b)load方法

8.下列关于构造函数的描述正确的是(c)c)构造函数必须与类名相同 11.接口是一种引用类型,在接口中可以声明(a),但不可以声明公有的域或私有的成员变量。a)方法、属性、索引器和事件;

12.ASP.NET框架中,服务器控件是为配合Web表单工作而专门设计的。服务器控件有两种类型,它们是(a ) a)HTML控件和Web控件

13.ASP.NET中,在Web窗体页上注册一个用户控件,指定该控件的名称为”Mike”,正确的注册指令为( b)

b)<%@Register TagPrefix = “Space2” TagName = “Mike” Src = “myX.ascx”%> 14.在ADO.NET中,对于Command对象的ExecuteNonQuery()方法和ExecuteReader()方法,下面叙述错误的是(c)。

c)Select操作的Sql语句只能由ExecuteReader()方法来执行;

15.下列ASP.NET语句(b)正确地创建了一个与SQL Server 2000数据库的连接。 a)SqlConnection con1 = new Connection(“Data Source = localhost; Integrated Security = SSPI; Initial Catalog = myDB”);

b)SqlConnection con1 = new SqlConnection(“Data Source = localhost; Integrated Security = SSPI; Initial Catalog = myDB”);

c)SqlConnection con1 = new SqlConnection(Data Source = localhost; Integrated Security = SSPI; Initial Catalog = myDB);

d)SqlConnection con1 = new OleDbConnection(“Data Source = localhost; Integrated Security = SSPI; Initial Catalog = myDB”);

16.Winform中,关于ToolBar控件的属性和事件的描述不正确的是()。 a)Buttons属性表示ToolBar控件的所有工具栏按钮

b)ButtonSize属性表示ToolBar控件上的工具栏按钮的大小,如高度和宽度

c)DropDownArrows属性表明工具栏按钮(该按钮有一列值需要以下拉方式显示)旁边是否显示下箭头键

d)ButtonClick事件在用户单击工具栏任何地方时都会触发

17.在ADO.NET中执行一个存储过程时,如果要设置输出参数则必须同时设置参数的方向和( d),必要时还要设置参数尺寸。d)类型;

18.如果将窗体的FormBoderStyle设置为None,则(a )。a)窗体没有边框并不能调整大小; 19.如果要将窗体设置为透明的,则( b) b)要将Opacity属性设置为小于100%得值; 21.下面描述错误的是(c )。c)控件是从窗体继承来的;

22.要对注册表进行操作则必须包含( d)。d)Microsoft.Win32命名空间; 23.要创建多文档应用程序,需要将窗体的(d )属性设为true。 d)IsMdiContainer;

24.如果设treeView1=new TreeView(),则treeView1.Nodes.Add(\"根节点\")返回的是一个 (a)类型的值。a)TreeNode;

25.下面关于XML的描述错误的是(d)。d)XML只是为了生成结构化文档; 27.在ASP.NET中有Button控件myButton,要是单击控件时,导航到其他页面http://www.abc.com, 正确的代码为(c )。

a)private void myButton_Click(object sender, System.EventArgs e){Redirect(“http://www.abc.com”);}

b)private void myButton_Click(object sender, System.EventArgs e){Request.Redirect(“http://www.abc.com”);}

c)private void myButton_Click(object sender, System.EventArgs e){Reponse.Redirect(“http://www.abc.com”);}

d)private void myButton_Click(object sender, System.EventArgs e){Request.Redirect(“http://www.abc.com”);return true;} 28.XML文档既包含数据同时也可包含( b)。b)架构; 二、判断题(每题2分,共14分)

9( F)判断单选框或复选框是否被选中的属性名是IsSelected。(checked)

6.(√)异常类对象均为System.Exception的子类对象。

7.(√) 当窗体最小化后,再次还原成为活动窗体时将自动触发Paint事件。

8.(√) ASP.NET中,使用验证控件来验证用户输入,要求用户不可跳过该项输入,并且用户输入值在0和1000之间,则适用RequiredFieldValidator和RangeValidator控件。 9.(×) 声明委托实际上是声明了一个方法。 10.(√) 任何事物都是对象。

14.一个窗体中可以有多个弹出式菜单。 答案:对

5.在C#Net中,窗体父子关系通过“属性”窗口来创建。 答案:对 7.使用Directory类的Move()方法可以删除文件。 答案:错 8.使用FileInfo类的Copy()方法可以复制文件。 答案:对

9.DataSet对象中的表可以和数据库中的表同名,也可以不同名。 答案:对 10.Command对象可以执行SQL语句。 答案:对

5.使用Directory类的Move()方法可以删除文件。 答案:错 6.使用FileInfo类的Copy()方法可以复制文件。 答案:对

18.菜单项标题中有含有带下划线的字符,这是快捷键。 答案:错 1.不能指定接口中方法的修饰符。 答:对

2.DotNet包含两个部分,即公共语言运行时和框架类库 答案:对

12.用Interval属性设置Timer控件Tick事件发生的时间间隔单位为秒。答案:错

13.设置图片框控件的SizeMode属性为StretchImage时,图片可以按图片框的大小比例缩放显示。答案:对

三填空题()

1、C#源程序文件的扩展名为( .cs) 2、在.NET中所有类的基类是(Object)

3、要编写和运行C#代码,用户必须安装(NET.Framwork)。 4、C#通过(区分大小写)避免变量名或类名的使用冲突。

5、if分支结构中,条件表达式的值必须是( bool)类型的数据。 6、类具有 (封装)、(继承)和(多态)三种基本特性。

7、接口使用关键字( interface)来定义,类使用关键字(class)来定义。

8、设置控件不可用、不可见的属性名分别是(enable)和(visable) 9、c#.net程序 三种工作模式分别是(设计模式)、(执行模式)和中断模式 10、(Main)方法是Windows应用程序的唯一入口点,而且只能有一个。

11、能用foreach遍历访问的对象需要实现 IEnumerable接口或声明GetEnumerable 方法的类型。

12、列举ADO.net中的五个主要对象Command、Connection、DataSet、DataSetCommand、DataReader。

13、列举ASP.NET 页面之间传递值的几种方式。

1.使用QueryString, 2.使用Session变量 3.使用Server.Transfer

1、 使用XML消息调用远程方法,是Web服务最重要的协议。 SOAP

2、 可以使Web服务方便的处理数据,实现内容与表示分离。 XML 3、 被用来存储一个应用中所有用户共享的信息。 APPLICATION 对象 4、在Web页面中,表单的功能是收集用户信息和________。 实现系统与用户交互

5、在ASP.NET页面中,有一些事件是被服务器自动调用,如________在页面被加载的时候被自动调用。 事件

6、CSS(Cascading Style Sheets)中文翻译为 ________ , CSS是一种来装饰HTML的一种标记集合。 层叠样式表

7、 用来将信息发送回给浏览器。 Response对象

8、 可以在一个位置集中显示来自 Web 页上所有验证程序的错误信息。 ValidationSummary控件

9、在ADO.NET中使用Connection对象的BeginTransaction( )方法来申明事务开始,利用Transaction对象的______________来提交事务。 Commit()方法

10、使用Command的 ________ 方法返回 DataReader 对象。 ExecuteReader()方法 ADO.NET访问数据库的步骤? 1、 创建数据库链路 2、 请求一个记录集合

3、 把记录集合暂存到DATASET 4、 如果需要返回第二步 5、 关闭数据库链路 在dataset上完成

第二章

2.. NET Framework的两个核心组件是什么? 答:. NET Framework的两个核心组件是公共语言运行库(Common Language Runtime,CLR)和.NET Framework类库(.NET Framework Class Library,FCL)。

4.为什么要引入命名空间的概念?如何使用.NET Framework中的类?

答:FCL提供了大量的类,用户自定义或第三方软件提供商也会开发大量的类库,为了防止这些程序集中的对象出现命名冲突,也为了方便开发者学习和使用,将类分组并按照层次结构的命名空间来进行管理。例如.NET Framework 3.5类库大约有300多个命名空间,每个命名空间包含完成某类任务的多个类。例如,System命名空间是.NET Framework 中基本类型的根命名空间,包括表示由所有应用程序使用的基本数据类型的类,System.Data命名空间包含组成ADO.NET的大部分数据访问类。

为了使用.NET Framework中的类必须有如下两个步骤:首先在项目中引用实现该类的特定的程序集;然后在程序中使用using导入这个类所关联的命名空间。

7.一个ASP.NET网站通常由哪些文件、文件夹组成?

答:网站通常有以下文件:default.aspx、web.config、global.asax。有以下文件夹: Bin:包含要在应用程序中引用的控件、组件或其他代码的已编译程序集(.dll文件) App_Data:存储应用程序的本地数据库,该数据库可用于维护成员资格和角色信息。 App_Code:包含作为应用程序一部分进行编译的实用工具类和业务对象(例如 .cs、.vb 和 .jsl 文件)的源代码。 App_Themes:包含用于定义 ASP.NET 网页和控件外观的文件集合(.skin 和 .css 文件以及图像文件和一般资源)。 App_Browsers:包含 ASP.NET 用于标识个别浏览器并确定其功能的浏览器定义 (.browser) 文件。 App_GlobalResources:包含编译到具有全局范围的程序集中的资源(.resx和.resoures文件)。 App_LocalResources:包含与应用程序中的特定页、用户控件或母版页关联的资源(.resx 和 .resources 文件)。 App_WebReferences:包含用于定义在应用程序中使用的Web引用的引用协定文件(.wsdl文件)、架构(.xsd文件)和发现文档文件(.disco和.doscomap文件)。

8.在Visual Studio 2008中创建一个ASP.NET网站,一般需要哪些步骤? 答:一般需要以下步骤: 启动Visual Studio 2008,执行“文件→新建网站”菜单命令,创建一个网站; 打开缺省创建的default.aspx页面(或添加新的页面),添加控件; 为页面及其控件编写事件过程代码; 运行和测试各页面;

9.在默认情况下,一个ASP.NET网页通常用哪两个文件来表示?其作用是什么?

答:默认情况下,ASP.NET采用代码隐藏页模型,即代码隐藏页模型的标记(可视元素)位于一个.aspx文件,而编程代码则位于另一个.aspx.cs文件(使用VB.NET编程语言时为.aspx.vb文件)。.aspx文件主要用于实现页面的显示,.aspx.cs文件用于完成页面的数据处理和逻辑功能。

第三章

.4 哪个事件是Button控件的默认事件? 答案:Click事件。

5. 如何设置,可以使命令按钮不可用(变灰)? 答案:将按钮属性Enable设置为false。

9. 如何创建两组互相排斥的单选按钮? 答案:将按钮放在两个不同的容器控件中。

11. 试述列表框的4种选择模式及其作用。

答案:MultiExtended:允许一次选择多项并且可以使用Shift和Ctrl键来帮助进行选择;MultiSimple:允许一次选择多项,但只能通过单击进行选择(单击一次选择它,再单击一次则取消对它的选择);None:不能在列表框中进行选择;One:一次只能选择一项(默认值)。

第四章

1.ADO.NET中连接对象和非连接对象的区别是什么? 答:连接对象需要直接和数据库连接通信,以管理事务和执行命令,如DataConnection对象、DataCommand对象等。非连接对象允许与数据库断开连接的状态下管理数据,如DataSet对象、DataTable对象等。非连接对象可以通过连接对象DataAdapter对象与实际数据库之间进行数据交换。

2.数据提供程序的作用是什么?.NET Framework提供了哪些数据提供程序?

答:为了实现与不同类型的数据源(如SQL Server或Oracle)的高效访问,.NET框架设计了多个数据提供程序(data provider),也称为数据提供者。不同的数据提供程序包含不同的数据库访问类,这些类能够直接和特定数据源进行高性能的通信,并负责数据源和非连接类之间的数据传输。

.NET Framework提供了以下数据提供程序: OLEDB提供程序:包含了多个使用OLEDB驱动程序与各类数据源通信的类,可以使用这些类访问SQL Server 6.5或更早版本、Sybase、DB2/400和Access。 ODBC提供程序:包含了采用ODBC驱动程序访问数据库的类,在没有更适合的提供者时可以使用这一组类。 SQL Server提供程序:包含了专为与SQL Server 7及以后版本的数据源进行通信的类。因为直接使用了更底层的客户端接口,所以数据访问性能更佳。 Oracle提供程序:包含了专为与Oracle 8i及后续版本的数据源进行通信的类,该提供者与OLEDB提供者基本相同,但性能要优于后者。

4.连接字符串的作用是什么?怎样能自动生成一个数据库的连接字符串?

答:连接字符串指定要访问的目标数据源以及访问将使用的数据提供程序。利用.NET开发环境中的服务器资源管理器通过人机交互来创建一个数据库连接,从而获得对应的连接字符串。

5.Connection对象用于什么目的?其主要方法有哪些?

答:Connection对象用于实现用户程序和具体数据源之间的连接。该对象起管道作用,其他对象如Command、DataAdapter等通过它与数据库通信。主要方法有Open()、Close()、BeginTransaction()、CreateCommand()等。

6.Command对象用于什么目的?它和Connection对象有什么关系? 答:Command对象用于完成数据库的查询、存储过程的调用以及记录操作等各种数据库SQL命令。Command对象需要使用Connection对象建立的数据库连接,才能执行命令,即Command对象的Connection属性需要指定关联的数据库连接对象,并且要保证连接对象已使用Open方法打开连接。

7.SQL命令和Command对象有什么关系?

答:Command对象的CommandText属性可以指定要执行的数据库SQL命令,通过ExecuteReader、ExecuteNonQuery等方法执行所指定的SQL命令。

10.DataReader对象的作用是什么?它和Command对象有什么关系?如何使用DataReader对象读取查询结果?

答:用于实现查询结果(数据行)的获取,支持仅向前的读取。查询命令由Command对象的ExecuteReader方法负责执行,该方法返回一个DataReader对象。DataReader对象的Read方法可以读取下一条记录,利用DataReader索引器(含参属性)给定列名或序号,可访问到当前行的每一列的值。循环使用Read方法可以遍历所有记录,直到该方法返回False。

12.为什么要使用DataAdapter对象,它和DataSet如何协作?

答:DataSet对象管理的是与数据库无连接的数据,即脱机数据,需要使用DataAdapter对象充当DataSet和数据源之间的桥梁。DataAdapter对象的Fill方法可以从从数据源获取数据并填充DataSet,Update方法将指定的DataSet中的数据提交并写回数据源。

第五章

. 什么是数据绑定?数据绑定有什么好处? 答:数据绑定技术是一种将用户界面的界面控件与数据源的数据捆绑在一起的技术,使用数据绑定可以在界面控件中自动显示数据源中的数据、甚至可以在界面控件中直接编辑数据源中的数据,而不需要手动编程。

2. 在.NET平台下,数据绑定的数据源可以有哪些?

答:除了支持传统数据源以外,还可以支持各种其它数据源,可以绑定几乎所有包含数据的结构,包括:ADO.NET的各种数据对象,数组、支持IList接口的各种对象、实现了IEnumerable接口的各种对象(需要用到BindingSource控件)、甚至普通的.NET对象。

3. 什么是类型化数据集?和普通数据集有什么区别?在Windows窗口应用程序中如何生成类型化数据集?

答:类型化数据集(Typed DataSet,或称强类型数据集)的结构在添加数据源或者修改数据源时就已经自动生成,编写代码时就能直接使用类型确定的数据集。例如:非类型化的数据集,需要使用索引下标或字符串(表名/列名)来指定所要访问的数据表或表中的数据列时,而类型化的数据集对象则直接使用成员属性来访问。 在VS2008中选择“数据→添加新数据源”,打开数据源配置向导,用来为当前应用程序添加类型化数据集。

4. TableAdapter的是什么?作用是什么?主要方法有哪些?如何为TableAdapter添加新的方法?

答:TableAdapter类用来操作强类型DataTable中的数据,每个DataTable类会对应一个类型化的TableAdapter类,负责该DataTable的数据检索和数据保存。 TableAdapter类中常用的方法包括:

Fill()方法和GetData()方法:用于获取数据 Insert()方法:用于增加数据行 Delete()方法:用于删除数据行

若干个Update方法:包括可以直接修改的Update方法,可以保存DataTable中数据的Update方法等。

为TableAdapter添加新的方法:用鼠标双击数据集文件,打开设计器,然后选择要添加数据访问方法的TableAdapter,在TableAdapter上点击鼠标右键,选择“添加查询”

5. BindingSource控件的作用是什么?如何使用它进行数据绑定?

答:使用BindingSource组件,可以封装窗体要绑定的数据源,窗体上的界面控件都可以绑定到BindingSource组件,以BindingSource组件为数据源,而BindingSource组件则绑定到各种其它类型的数据源。BindingSource组件作为界面控件和真正数据源之间的桥梁,为界面控件提供了一个统一的绑定各种数据源的方法,而不需要界面控件去面对各种不同类型的数据源。 使用BindingSource组件进行数据绑定的方式是先将BindingSource组件和数据源进行绑定,然后再将窗体控件和BindingSource组件绑定。BindingSource组件使用DataSource属性和DataMember属性与数据源绑定,如果绑定的是数据表(DataTable),则只使用DataSource属性即可;如果与数据集DataSet绑定,则除了将数据集与DataSource属性绑定以外,还需要通过设置DataMember属性设置要绑定的数据表的名称。

8. 使用BindingSource控件,如何进行数据修改的保存?如何进行数据排序和过滤? 答:当用户通过窗体控件修改数据之后,需要编写下面三行代码实现数据的保存,即数据保存到数据库中。 this.Validate();

this.teacherBindingSource.EndEdit();

this.teacherTableAdapter.Update(this.teachingManagementDataSet); 设置BindingSource的Sort属性可以实现排序。设置BindingSource的Filter属性则可以进行数据过滤。

9. 使用BindingSource控件,如何实现主从表的联动显示?

答:使用BindingSource可以非常方便的实现主从表的显示,具体方法是:

(1) 在窗体上添加两个BindingSource组件(bindingSource1和bindingSource2)。

(2) 在窗体上添加一个类型化的DataSet,在DataSet中包含主表和从表。如果数据源

已经设计好,可直接拖动数据源到窗体上。

(3) 在数据集设计器中,为DataSet中的主表和从表添加关系(添加外键)。如果数据源

中已经有了表和表之间的关系,这一步就可以省略。

(4) 将bindingSource1绑定到类型化DataSet中的主表,可以在属性窗口中设置,代码设置如下:

bindingSource1.DataSource = teachingMenagementDataSet; bindingSource1.DataMember = \"Department\";

(5)将bindingSource2绑定到主表对应的BindingSource组件(即bindingSource1),并将

DataMember属性设置为DataSet中主从表的关系名称,可以在属性窗口中设置,代码如下:

bindingSource2.DataSource = bindingSource1;

bindingSource2.DataMember = \"FK__Teacher__Departm__1B0907CE\"; (6) 在窗体上添加两个DataGridView控件用来显示主表和从表,分别和bindingSource1和bindingSource2进行绑定,可以在属性窗口中设置,代码设置如下:

dataGridView1.DataSource = bindingSource1; dataGridView2.DataSource = bindingSource2;

第七章

1.在本案例中编写数据库存储过程的目的是什么?

答:使用C#编程难以完成较复杂的数据操作,可以通过在数据库服务器上编写存储过程实现,编程简单并且执行性能高。本案例有两个存储过程,一个用于查询图书基本信息及其馆藏信息,另一个用于查询指定时间段内借阅次数最多的前10名图书信息。

2.什么是应用程序的多层架构?分层的目的是什么? 答:将一个应用程序中的所有处理逻辑按照职责进行层次划分,每个层次包含逻辑功能相似的一个或多个类,它们封装在一个或多个组件中,上层组件使用下层组件提供的服务。这种软件架构模式称为多层架构。例如应用程序可以采用四层模式设计:界面层组件负责用户交互,业务逻辑层组件负责实现业务流程和规则,数据访问层负责数据访问。 分层可以达成以下目的: 软件结构清晰,代码耦合度低,易于编程实现; 程序员可以只关注其中一层,能更快更好完成编程工作; 易于复用,减少编程工作量,容易保证一致性; 层与层之间通过接口建立单向依赖关系,某一层组件的内部修改不会波及其他组件,增加了系统的灵活性和可扩展性; 利于开发任务同步进行,加快开发进度,项目进度管理有更多选择。

第八章

1.浏览器/服务器模式与客户/服务器模式相比有哪些优势?

答:浏览器/服务器模式是Web网络出现以后出现的一种软件架构模式,在这种模式下,客户机只要安装一个浏览器即可,不需要安装专门的客户端软件,简化了客户端软件的安装和维护;软件系统是基于Web网络的应用程序,应用程序主要运行在Web服务器上,软件的安装和更新更为容易,维护成本大幅降低,提高了维护工作效率。

3. 分层模式的优点和缺点各有哪些? 答:分层模式的软件体系架构有如下优点: 结构清晰、耦合度低,易于编程实现 程序员可以只关注其中一层,能更快更好完成编程工作 易于复用,减少编程工作量,容易保证一致性 降低了层与层之间的依赖,修改容易 便于系统的扩展,增加了系统的 利于开发任务同步进行,加快开发进度,项目进度管理有更多选择 缺点主要是: 增加了整个系统总体的复杂性,需要更多学习 多层的软件降低了一定的性能 程序的修改可能会造成级联修改

6. 业务逻辑类在系统中会直接访问数据库吗?

答:不会,业务逻辑类用来封装业务规则,提供实际的业务服务,业务逻辑层会调用数据访

问层访问数据,而不是直接访问数据。

因篇幅问题不能全部显示,请点此查看更多更全内容

热门图文