搜档网
当前位置:搜档网 › 获取数据库表中数据几种方式

获取数据库表中数据几种方式

获取数据库表中数据几种方式
获取数据库表中数据几种方式

①查(只能读取第一行第一列)

sqlParameter[] spar={

new SqlParameter("@count",SqlDbType.Int)

}

spar[0].Direction = ParameterDirection.Output;

Using (sqlconnection sconn=new sqlconnection(str))

{

Using(sqlcommand scomm=new sqlcommand(sql,sconn))

{

https://www.sodocs.net/doc/d16181960.html,mandtype=commandtype.StoreProcedure;

scomm.Parameters.AddRange(spar);

sconn.open();

str1 = scomm.ExecuteScalar().ToString();

}

}

MessageBox.Show(str1);

②查(读取一行数据)

Using (sqlconnection sconn=new sqlconnection(str))

{

Using(sqlcommand scomm=new sqlcommand(sql,sconn))

{

https://www.sodocs.net/doc/d16181960.html,mandtype=commandtype.StoreProcedure;

scomm.Parameters.AddRange(spar);

sconn.open();

SqlDataReader reader = scomm.ExecuteReader();

while (reader.Read())

{

string id = reader["CourseID"].ToString();

string name = reader["CourseName"].ToString();

MessageBox.Show(id + " " + name);

}

}

}

使用适配器SqlDataAdapter读取数据库

Using (sqlconnection sconn=new sqlconnection(str))

{

Using(sqlcommand scomm=new sqlcommand(sql,sconn))

{

https://www.sodocs.net/doc/d16181960.html,mandtype=commandtype.StoreProcedure;

SqlDataAdapter sda = new SqlDataAdapter(scomm);

DataSet ds = new DataSet();

sda.Fill(ds);

DataTable dt = ds.Tables[0];

string str3 = dt.Rows[0]["CourseID"].ToString();

①foreach(DataRow r in dt.Rows)

{

string id = r["CourseID"].ToString();

}

②for (int i = 0; i < dt.Rows.Count; i++)

{

string id = dt.Rows[i]["CourseID"].ToString();

}

}

}

关系数据库理论

第4部分关系数据库理论 复习习题与讲解资料 【主讲教师:钱哨】 一.考试大纲考点要求 1 了解关系模式设计中可能出现的问题及其产生原因以及解决的途径。 2 掌握函数依赖、完全函数依赖、部分函数依赖、传递函数依赖的定义,能计算属性的封闭集,并由此得到关系的候选键。 3 掌握第一范式( 1NF )、第二范式( 2NF )和第三范式( 3NF )的定义,能判别关系模式的范式等级。 4 掌握关系模式的分解(规范到 3NF )的步骤、分解的原则和分解的方法。 二.单项选择题 1. 为了设计出性能较优的关系模式,必须进行规范化,规范化主要的理论依据是()。 A. 关系规范化理论 B. 关系代数理论 C.数理逻辑 D. 关系运算理论 2. 规范化理论是关系数据库进行逻辑设计的理论依据,根据这个理论,关系数据库中的关系必须满足:每一个属性都是()。 A. 长度不变的 B. 不可分解的 C.互相关联的 D. 互不相关的 3. 已知关系模式R(A,B,C,D,E)及其上的函数相关性集合F={A→D,B→C ,E→ A },该关系模式的候选关键字是()。 A.AB B. BE C.CD D. DE

4. 设学生关系S(SNO,SNAME,SSEX,SAGE,SDPART)的主键为SNO,学生选课关系SC(SNO,CNO,SCORE)的主键为SNO和CNO,则关系R(SNO,CNO,SSEX,SAGE,SDPART,SCORE)的主键为SNO和CNO,其满足()。 A. 1NF B.2NF C. 3NF D. BCNF 5. 设有关系模式W(C,P,S,G,T,R),其中各属性的含义是:C表示课程,P表示教师,S表示学生,G表示成绩,T表示时间,R表示教室,根据语义有如下数据依赖集:D={ C →P,(S,C)→G,(T,R)→C,(T,P)→R,(T,S)→R },关系模式W的一个关键字是()。 A. (S,C) B. (T,R) C. (T,P) D. (T,S) 6. 关系模式中,满足2NF的模式()。 A. 可能是1NF B. 必定是1NF C. 必定是3NF D. 必定是BCNF 7. 关系模式R中的属性全是主属性,则R的最高范式必定是()。 A. 1NF B. 2NF C. 3NF D. BCNF 8. 消除了部分函数依赖的1NF的关系模式,必定是()。 A. 1NF B. 2NF C. 3NF D. BCNF 9. 如果A->B ,那么属性A和属性B的联系是()。 A. 一对多 B. 多对一 C.多对多 D. 以上都不是 10. 关系模式的候选关键字可以有1个或多个,而主关键字有()。 A. 多个 B. 0个 C. 1个 D. 1个或多个 11. 候选关键字的属性可以有()。 A. 多个 B. 0个 C. 1个 D. 1个或多个 12. 关系模式的任何属性()。 A. 不可再分 B. 可以再分 C. 命名在关系模式上可以不唯一 D. 以上都不是 13. 设有关系模式W(C,P,S,G,T,R),其中各属性的含义是:C表示课程,P表示教师,S表示学生,G表示成绩,T表示时间,R表示教室,根据语义有如下数据依赖集:D={ C →P,(S,C)→G,(T,R)→C,(T,P)→R,(T,S)→R },若将关系模式W分解为三个关系模式W1(C,P),W2(S,C,G),W2(S,T,R,C),则W1的规范化程序最

数据库表和数据库关系的实现

第五讲数据库表和数据库关系的实现 5.1数据类型 定义数据表的字段、声明程序中的变量时,都需要为他们设置一个数据类型。目的是指定该字段或变量所存放的数据类型,以及需要多少空间。 5.1.1整型:可以用来存放整数数据的字段或变量。有bigint、int、smallint、 两种类型,这两种类型完全相同,一般建议使用numeric。 使用numeric或decimal时,必须指明精确度(即全部有效位数)与小数点位数,例如:numeric(5,2)表示精度为5,总共位数为5位,其中3位整数及2位小数。若不指定,则默认值为numeric(18,0)。精确度可指定的范围为1~38, 取其“近似值”。例如:23456646677799变成 2.3E+13,此类数据类型有float 和real两种。注意:使用float和real类型,若数值的位数超过其有效位数的限

其中varchar及text的实际存储长度会依数据量而调整。如:varchar(10)表示最多可存储10字节,但若只填入5个字符,那么只会占用5字节。char与varchar 最多只能存储8000个字符,若数据超过此长度,请改用text类型。 在使用char及varchar时必须指定字符长度,例如char(50)、varchar(50); 的数据与字符串类型相当类似,Unicode字符串的一个字符是用2个字节存储,而一般字符串是一个字符用1个字节存储。此类数据类型有nchar、nvarchar、ntext。 在使用nchar及nvarchar时必须指定字符长度,例如nchar(50)、nvarchar 据多用16进制表示,而且要加上0x字头)。此类数据类型有binary、varbinary 与image,其特性分别相当于字符串类型的char、varchar、text。image类型还可以用来存放word文件、excel电子表格、以及位图、GIF和JPEG文件。 使用binary及varbinary时须指定字符长度,例如binary(50)、varbinary(30);若未指定,默认值为1。Image类型则不必指定长度。

access第3章数据表习题及答案

第三章创建和维护数据表习题及答案 一、选择题 (1)Access数据库的设计一般由5个步骤组成,对以下步骤的排序正确的是 a.确定数据库中的表b.确定表中的字段 c.确定主关键字d.分析建立数据库的目的 e.确定表之间的关系 A) dabec B) dabce C) cdabe D) cdaeb (2)学校欲建立一个“教学管理”的数据库,由教师表、学生表、课程表、选课成绩表组成,教师表中有教师编号、姓名性别、工作时间、职称、学历、系别等字段,试确认该表的主关键字是 A) 姓名B) 教师编号C) 系别D) 职称 (3)以下字符串不符合Access字段命名规则的是 A) ^_^birthday^_^ B) 生日C) Jim.jeckson D)//注释 (4)某学校欲建立一个“教学管理”的数据库,设计该数据库由教师表、学生表、课程表、选课成绩表组成,其中教师表由TeacherID、TeacherName、sex、[telephone]组成,现确定该表的主关键字为TeacherName。以下分析正确的是 A) 教师表字段命名有错误,其他正确 B) 教师表主关键字选择错误,其他正确 C) 教师表字段命名和主关键字错误 D) 该表设计没有错误 (5)一张“学生”表中,要使“年龄”字段的取值范围设在14~50之间,则在“有效性规则”属性框中输入的表达式为 A) >=14AND<=50 B) >=140R=<50 C) >=50AND<=14 D) >=14&&=<50

(6)可以选择输入数据或空格的输入掩码是 A) 0 B) < C) > D) 9 (7)将所有字符转换为大写的输入掩码是 A) > B) < C) 0 D) A (8)某文本型字段的值只能为字母且不允许超过6个,则将该字段的输入掩码属性定义为 A) AAAAAA B) LLLLLL C) CCCCCC D) 999999 (9)某数据库的表中要添加Intemet站点的网址,则该采用的字段的数据类型是 A) OLE对象数据类型B) 超级链接数据类型 C) 查阅向导数据类型D) 自动编号数据类型 (10)某数据库的表中要添加一张图片,则采用的该字段的数据类型是 A) OLE对象数据类型B) 超级链接数据类型, C) 查阅向导数据类型D) 自动编号数据类型 (11)Access数据库中哪个数据库对象是其他数据库对象的基础? A) 报表B) 表C) 窗体D) 模块 (12)在使用Access创建数据库中的表时,以下不能导入到Access数据库中的是 A) Excel表格B) ForPro创建的表C) Access数据库中的表D) Word文档里的表 (13)某字段中已经有数据,现要改变该字段大小的属性,将该字段大小重新设置为整数型,则以下所存数据会发生变化的是 A) 123 B) 2.5 C) -12 D) 1563 (14)Access中表与表的关系一般定义为 A) 一对多关系B) 多对多关系C) 一对一关系D) 多对一关系 (15)若要在某表中“姓名”字段中查找t:A wh开头的所有人名,则应在查找内容框中输入的字符串是 A) wh? B) wh* C) wh[ ] D) wh# (16)将文本字符串"23,18,9,66"按升序排序,排序的结果将是

关系数据库设计

目录 一 Codd的RDBMS12法则——RDBMS的起源 二关系型数据库设计阶段 三设计原则 四命名规则 数据库设计,一个软件项目成功的基石。很多从业人员都认为,数据库设计其实不那么重要。现实中的情景也相当雷同,开发人员的数量是数据库设计人员的数倍。多数人使用数据库中的一部分,所以也会把数据库设计想的如此简单。其实不然,数据库设计也是门学问。 从笔者的经历看来,笔者更赞成在项目早期由开发者进行数据库设计(后期调优需要DBA)。根据笔者的项目经验,一个精通OOP和ORM的开发者,设计的数据库往往更为合理,更能适应需求的变化,如果追其原因,笔者个人猜测是因为数据库的规范化,与OO的部分思想雷同(如内聚)。而DBA,设计的数据库的优势是能将DBMS的能力发挥到极致,能够使用SQL和DBMS实现很多程序实现的逻辑,与开发者相比,DBA优化过的数据库更为高效和稳定。如标题所示,本文旨在分享一名开发者的数据库设计经验,并不涉及复杂的SQL语句或DBMS使用,因此也不会局限到某种DBMS产品上。真切地希望这篇文章对开发者能有所帮助,也希望读者能帮助笔者查漏补缺。 一?Codd的RDBMS12法则——RDBMS的起源 Edgar Frank Codd(埃德加·弗兰克·科德)被誉为“关系数据库之父”,并因为在数据库管理系统的理论和实践方面的杰出贡献于1981年获图灵奖。在1985年,Codd 博士发布了12条规则,这些规则简明的定义出一个关系型数据库的理念,它们被作为所有关系数据库系统的设计指导性方针。 1.信息法则?关系数据库中的所有信息都用唯一的一种方式表示——表中的值。 2.保证访问法则?依靠表名、主键值和列名的组合,保证能访问每个数据项。 3.空值的系统化处理?支持空值(NULL),以系统化的方式处理空值,空值不依赖于数据类型。 4.基于关系模型的动态联机目录?数据库的描述应该是自描述的,在逻辑级别上和普通数据采用同样 的表示方式,即数据库必须含有描述该数据库结构的系统表或者数据库描述信息应该包含在用 户可以访问的表中。 5.统一的数据子语言法则?一个关系数据库系统可以支持几种语言和多种终端使用方式,但必须至少 有一种语言,它的语句能够一某种定义良好的语法表示为字符串,并能全面地支持以下所有规 则:数据定义、视图定义、数据操作、约束、授权以及事务。(这种语言就是SQL) 6.视图更新法则?所有理论上可以更新的视图也可以由系统更新。 7.高级的插入、更新和删除操作?把一个基础关系或派生关系作为单个操作对象处理的能力不仅适应 于数据的检索,还适用于数据的插入、修改个删除,即在插入、修改和删除操作中数据行被视 作集合。 8.数据的物理独立性?不管数据库的数据在存储表示或访问方式上怎么变化,应用程序和终端活动都 保持着逻辑上的不变性。 9.数据的逻辑独立性?当对表做了理论上不会损害信息的改变时,应用程序和终端活动都会保持逻辑 上的不变性。 10.数据完整性的独立性?专用于某个关系型数据库的完整性约束必须可以用关系数据库子语言定 义,而且可以存储在数据目录中,而非程序中。

数据库常用表

用友数据库常用表 数据库中重要表的讲解 1、.ufysftem库此库是系统参数数据库 其中主要存放各个帐套的共用信息 意义很大 日常应用的也很多。 A ua_account 是帐套信息表 其中系统帐套存放路径、帐套启用年度、帐套启用月份、企业类型、行业性质等字段特别重要。 B ua_account_sub 帐套各模块启用月度及最大结帐月表 其中子系统id 字段、最大结帐月字段、子系统启用日期字段十分重要。 C ua_period 帐套会计日期划分表。 D ua_task 异常任务记录表01(在所有模块退出后 此表应为空) E ua_tasklog 异常任务记录表02 同上 F ua_log 上机日志表 G ua_tonextyear 建立下年年度帐时要建立的表 此表也特别重要 在建立年度帐失败时 一般可从此表记录的内容进行排查 以发现上年度是哪张表有问题 . H、ua_holdauth 记录每个操作员在每个帐套每个年度的分配权限。 2、ufdata_00n_200x库此数据库叫应用数据库 命名规则是ufdata_帐套编号_年度 四位计数 其中主要存放每个年度的帐务数据 包括各个模块的数据。在数据表中 命名方法是模块代码_表名。其中 ap代表应付 ar代表应收;gl代表总帐;wa代表工资 fa代表固定资产;pu代表采购 sa代表销售 st代表库存;ia代表存货 fd代表资金管理;ca代表成本等。 A accinformation 帐套参数表 包括财务和购销存模块设置选项中定义的所有参数 如启用时间、系统年度等等。 B ap_closebill 收付款结算表 主要记录收款单、付款单的内容 C ap_detail 应收应付明细表 主要记录已结算的采购发票和已审核的销售发票所形成的应收应付记录。 D ap_vouch/s 应付/收单主子表 记录销售已审核的代垫费用单 应收、应付单等的表头和表体记录。 E ap_vouchtype 单据类型表 主要记录应收应付系统所使用的各种单据的类型和代码。 F currentstock 现存量表 写入存货的不同自由项、所在仓库到目前为止的结存数量和结存件数。 G customer 客户档案表 写入客户的记录。 H dispatchlist/s 发货单、委托代销结算单主子表 主表写入表头内容 子表写入表体内容。 I Dsign 凭证类别表 定义凭证类别的记录。 J endispatch/s 委托代销发货单主子表。 K gl_accass 辅助总帐表 写入带有辅助核算科目的期初余额以及凭证记帐之后带有辅助核算科目的记录。 L gl_accsum 科目总帐表 写入科目的期初余额和凭证记帐之后科目的增加变化记录。 M gl_accvouch 凭证及明细帐表 写入带有个人往来、供应商往来、客户往来的科目的期初余额及所有模块填制的凭证的明细记录。

关系数据库中

1关系数据库中,主键的正确描述是(D )。 (A) 创建唯一的索引,允许空值(B) 允许有多个主键的 (C) 只允许以表中第一字段建立(D) 为标识表中唯一的实体 2以下不适合创建非聚集索引的情况是(A )。 (A) 表中包含大量重复的列值(B) 带WHERE子句的查询 (C) 经常需要进行联接和分组操作的列(D) 表中包含大量非重复的列值 3使用视图的作用有4个,下列哪一个是错误的(A )。 (A) 导入数据(B) 定制操作 (C) 简化操作(D) 安全性 4叙述A:当视图被撤消,不会对基表造成任何影响。叙述B:不能改变作为计算结果的列。关于对以上叙述中,正确的是(C )。 (A) 叙述A错误,叙述B正确(B) 叙述A正确,叙述B错误 (C) 都正确(D) 都是错误的 5语句:select 10%7 的执行结果是(D )。 (A) 7 (B) 1 (C) 70 (D) 3 6下列关于关联的叙述正确的是( D)。 (A) 已创建关联的两个表中的关联字段数据 可能完全不同(B) 可在两个表的不同数据类型的同名字段 间创建关联 (C) 可在两个表的不同数据类型的字段间创 建关联(D) 可在两个表的相同数据类型的不同名称 的字段间创建关联 7用UNION合并两个SELECT查询的结果时,下列叙述中错误的是()。 (A) 两个SELECT语句必须输出同样的列数(B) 将来自不同查询的数据组合起来 (C) 两个表各相应列的数据类型必须相同(D) 被组合的每个查询都可以使用ORDER B Y子句 8查询所有目前年龄在24岁以上(不含24岁)的学生信息(学号、姓名、年龄),正确的命令是()。 (A) SELECT 学号,姓名,年龄=YEAR(GETDA TE())-YEAR(出生日期) FROM 学生 WHE RE YEAR(GETDATE())-YEAR(出生日 期)>24 (B) SELECT 学号,姓名,YEAR(GETDATE())- YEAR(出生日期) 年龄 FROM 学生 WHE RE YEAR(GETDATE())-YEAR(出生日 期)>24

关系数据库中的表不必具有的性质是什么

关系数据库中的表不必具有的性质是( ). A. 数据项不可再分 B. 同一列数据项要具有相同的数据类型 C. 记录的顺序可以任意排列 D. 字段的顺序不能任意排列 优质解答D.字段的顺序不能任意排列 1).Access数据库属于(C)数据库。 A)、层次模型 B)、网状模型 C)、关系模型 D)、面向对象模型 2).打开Access数据库时,应打开扩展名为(B)的文件。 A)、mda B)、mdb C)、mde D)、DBF 3).已知某一数据库中有两个数据表,它们的主关键字与主关键字之间是一个对应多个的关系,这两个表若想建立关联,应该建立的永久联系是(B)。 A)、一对一 B)、一对多 C)、多对多

D)、多对一 4).下列(B)不是Access数据库的对象类型? A)、表 B)、向导 C)、窗体 D)、报表 5).关系数据库中的表不必具有的性质是(D)。 A)、数据项不可再分 B)、同一列数据项要具有相同的数据类型 C)、记录的顺序可以任意排列 D)、字段的顺序不能任意排列 6).下列对于Access2000(高版本)与Access97(低版本)之间的说法不正确的是(C)。 A)、通过数据转换技术,可以实现高、低版本的共享. B)、高版本文件在低版本数据库中可以打开,但有些功能不能正常运行. C)、低版本数据库文件无法在高版本数据库中运行. D)、高版本文件在低版本数据库中能使用,需将高版本转换成低版本. 7).不能退出Access 2000的方法是(C)。 A)、单击"文件"菜单/"退出" B)、单击窗口右上角"关闭"按钮

C)、ESC D)、ALT+F4 8).Access在同一时间,可打开(A)个数据库。 A)、1 B)、2 C)、3 D)、4 9).对表中某一字段建立索引时,若其值有重复,可选择(D)索引。 A)、主 B)、有(无重复) C)、无 D)、有(有重复) 10).创建表时可以在(C)中进行。 A)、报表设计器 B)、表浏览器 C)、表设计器 D)、查询设计器 11).不能进行索引的字段类型是(A)。 A)、备注 B)、数值 C)、字符 D)、日期

数据库中表之间的关系

数据库中表之间的关系 表关系(一对一,一对多,多对多) 收藏 可以在数据库图表中的表之间创建关系,以显示一个表中的列与另一个表中的列是如何相链接的。 在一个关系型数据库中,利用关系可以避免多余的数据。例如,如果设计一个可以跟踪图书信息的数据库,您需要创建一个名为 titles 的表,它用来存储有关每本书的信息,例如书名、出版日期和出版社。您也可能保存有关出版社的信息,诸如出版社的电话、地址和邮政编码。如果您打算在 titles 表中保存所有这些信息,那么对于某出版社出版的每本书都会重复该出版社的电话号码。 更好的方法是将有关出版社的信息在单独的表,publishers,中只保存一次。然后可以在 titles 表中放置一个引用出版社表中某项的指针。 为了确保您的数据同步,可以实施 titles 和 publishers 之间的参照完整性。参照完整性关系可以帮助确保一个表中的信息与另一个表中的信息相匹配。例如,titles 表中的每个书名必须与 publishers 表中的一个特定出版社相关。如果在数据库中没有一个出版社的信息,那么该出版社的书名也不能添加到这个数据库中。 为了更好地理解表关系,请参阅: 定义表关系 实施参照完整性 定义表关系 关系的确立需要通过匹配键列中的数据(通常是两表中同名的列)。在大多数情况下,该关系会将一个表中的主键(它为每行提供了唯一标识)与另一个表的外部键中的某项相匹配。例如,通过创建 titles 表中的 title_id(主键)与 sales 表中的 title_id 列(外部键)之间的关系,则销售额就与售出的特定书名相关联了。 表之间有三种关系。所创建关系的类型取决于相关列是如何定义的。 一对多关系 多对多关系

VFP数据库的基本操作习题

1.在Visual FoxPro的命令窗口中输入CREATE DATA命令以后,屏幕会出现一个创建对 话框,要想完成同样的工作,还可以采取如下步骤( )。 A)单击“文件”菜单中的“新建”按钮,然后在新建对话框中选定“数据库”单选按钮,再单击“新建文件”命令按钮 B)单击“文件”菜单中的“新建”按钮,然后在新建对话框中选定“数据库”单选按钮,再单击“向导”命令按钮 C)单击“文件”菜单中的“新建”按钮,然后在新建对话框中选定“表”单选按钮,再单击“新建文件”命令按钮 D)单击“文件”菜单中的“新建”按钮,然后在新建对话框中选定“表”单选按钮,再单击“向导”命令按钮 2.一个数据库名student,要想打开数据库,应使用命令()。 A)OPEN student B)OPEN DATA student C)USE DATA student D)USE student 3.在使用USE命令打开表文件时,能够同时自动打开一个相关的()。 A)备注文件B)文本文件C)内存变量文件D)屏幕格式文件 4.删除数据库表中的记录有()方式。 A)1种B)2种C)3种D)4种 5.如果需要给当前表末尾增加一个空白记录,应使用的命令是()。 A)APPEND B)APPEND BLANK C)INSERT D)EDIT 6.要从表中物理删除一条记录,应使用命令()。 A)首先用DELETE命令,然后用ZAP命令 B)直接用ZAP命令 C)首先用DELETE命令,然后用PACK命令 D)直接用DElETE命令 7.要彻底删除表中的所有记录,可以使用命令( )。 A)PPEND B)DELETE C)ZAP D)RECALL 8.用命令REPLACE修改记录的特点是()。 A)边查阅边修改B)数据表之间自动更新 c)成批自动替换D)按给定条件顺序修改更新 9.职工数据表中有D型字段“出生日期”,苦要显示职工生日的月份和日 期,应当使用命令()。 A)?姓名+MONTH(出生日期)+”月”+DAY(出生日期)+“日” B)?姓名+STR(MONTH(出生日期)+”月”+DAY(出生日期))+”日” c)?姓名+SUBSTR(MONTH(出生日期))+”月”+SUBSTR(DAY(出生日期)) +”日“ D)?姓名+STR(MONTH(出生日期),2)+”月”+STR(DAY(出生日期),2) +”日” 10.在以下各命令序列中总能实现插入一条空记录并使其成为第八条记录的是()。 A)SKIP 7 B)GOTO 7 INSERT BLANK INSERT BLANK C)LOCATE FOR RECNO( )=8 D)GOTO 7 INSERT BLANK INSERT BIlANK BEFORE

关系数据库设计理论

第6章关系数据库设计理论 本章主要讲解在关系数据库的设计过程中,如何减少数据冗余,避免出现异常,该如何对数据库模式进行中心设计。 1.深入理解函数依赖和键码的概念。学会计算属性的封闭集。 2.模式设计是本章的重点。了解数据冗余和更新异常产生的根源;理解关系模式规范化的途径;准确理解第一范式、第二范式、第三范式和BC范式的含义、联系与区别; 深入理解模式分解的原则;熟练掌握模式分解的方法,能正确而熟练的将一个关系模式分解成属于第三范式或BC范式的模式。 3.了解多值依赖和第四范式的概念,掌握把关系模式分解成属于第四范式的模式的方法。 本章主要的知识点包括: 知识点1 函数依赖 知识点2 模式设计 知识点3 多值依赖 学习要点1、函数依赖 1.1函数依赖的定义 如果关系R的两个元组在属性A1,A2,… An上一致(也就是,两个元组在这些属性所对应的各个分量具有相同的值),则它们在另一个属性B上也一致。那么,我们就说在关系R中属性B函数依赖于属性A1A2…An。记做A1A2…An ,也可以说“A1,A2,…,An函数决定B”。A1A2…An称为决定因素。 举例: 在这个关系中,学号确定后,学生的姓名及所在的系就都确定了。属性中的这种依赖关系就是函数依赖。在本例中存在下列函数依赖。 ?Sno SN ame ?Sno S dept ?S dept Mname ?Sno C name Grade 1.2 关系的键码如一个或多个属性的集合{A1,…,An}满足如下条件,称该集合为关系R的键码: 1. 这些属性函数决定该关系的所有其它属性。 2. {A1,…,An}的任何真子集都不能函数决定R的所有其它属性,键码必须是最小的。 1.3 超键码包含键码的属性集称为“超键码” 。

数据库定义表之间关系(带图)

如何定义数据库表之间的关系 特别说明 数据库的正规化是关系型数据库理论的基础。随着数据库的正规化工作的完成,数据库中的 各个数据表中的数据关系也就建立起来了。 在设计关系型数据库时,最主要的一部分工作是将数据元素如何分配到各个关系数据表中。一旦完成了对这些数据元素的分类,对于数据的操作将依赖于这些数据表之间的关系,通过这些数据表之间的关系,就可以将这些数据通过某种有意义的方式联系在一起。例如,如果你不知道哪个用户下了订单,那么单独的订单信息是没有任何用处的。但是,你没有必要在同一个数据表中同时存储顾客和订单信息。你可以在两个关系数据表中分别存储顾客信息和订单信息,然后使用两个数据表之间的关系,可以同时查看数据表中每个订单以及其相关的客户信息。如果正规化的数据表是关系型数据库的基础的话,那么这些数据表之间的关系则 是建立这些基础的基石。 出发点 下面的数据将要用在本文的例子中,用他们来说明如何定义数据库表之间的关系。通过Boyce-Codd Normal Form(BCNF)对数据进行正规化后,产生了七个关系表: Books: {Title*, ISBN, Price} Authors: {FirstName*, LastName*} ZIPCodes: {ZIPCode*} Categories: {Category*, Description} Publishers: {Publisher*} States: {State*} Cities: {City*} 现在所需要做的工作就是说明如何在这些表之间建立关系。 关系类型 在家中,你与其他的成员一起存在着许多关系。例如,你和你的母亲是有关系的,你只有一位母亲,但是你母亲可能会有好几个孩子。你和你的兄弟姐妹是有关系的——你可能有很多兄弟和姐妹,同样,他们也有很多兄弟和姐妹。如果你已经结婚了,你和你的配偶都有一个配偶——这是相互的——但是一次只能有一个。在数据表这一级,数据库关系和上面所描述现象中的联系非常相似。有三种不同类型的关系: 一对一:在这种关系中,关系表的每一边都只能存在一个记录。每个数据表中的关键字在对应的关系表中只能存在一个记录或者没有对应的记录。这种关系和一对配偶之间的关系非常相似——要么你已经结婚,你和你的配偶只能有一个配偶,要么你没有结婚没有配偶。大多数的一对一的关系都是某种商业规则约束的结果,而不是按照数据的自然属性来得到的。如果没有这些规则的约束,你通常可以把两个数据表合并进一个数据表,而且不会打破任何规 范化的规则。

数据库试题

2010年第三学期电子商务专业期未试题 科目:《ACCESS--2003数据库技术及应用》 2010.12 一、填空题(每空0.5分,共10分) 1、对于电话号码这种非计算的类的数据一般为 型 ;年终总结设为 型。 2、为数据库的建立、使用和维护而配置的软件是 系统。 3、根据对操作表操作的不同,查询可以分为 和 。 4、查询设计完成后,有多种方式可以观察查询结果,比如可以进入 视图模式, 或 者单击 按钮。 5、总计查询中必须包含两种字段 和 。 6、交叉表查询的三要素是: 、 、 。 7、将文本型数据:“13”“ 4”“16”“760”降序排列,顺序是 8、打开数据表,可以使用 视图,也可以使用 视图,它们可相互转换。 9、Access 数据库管理系统主要使用 对象显示、输入、编辑数据。 10、表中的OLE 对象型数据,在窗体中使用 控件表示。 11、窗体的数据来源可以是表数据对象,也可以是 数据对象。 12、在创建报表时一般都是先用“自动创建报表”或 创建报表,然后切换 到 视图,对生成的报表进行修改。 一、 判断题:(每小题0.5分,共10分) ( )1、Null 是最小的值。 ( )2、身份证号码不能为数字型。 ( )3、排序可以同时对多个字段进行。 ( )4、输入掩码向导可以用于日期/时间型数据。 ( )5、“设计视图”是创建表最有效的方法。 ( )6、查询结果不能保存,除非使用生成表查询。 ( )7、查询只能对相关联的表进行。 ( )8、字段在库的设计中己定义完成,在查询显示时不能改变其显示名称。 ( )9、查询条件必须预先设计好,在查询过程中不能更改查询条件。 ( )10、查询记录集中显示的字段必须是数据库中己有的字段。 ( )11、窗体中页眉和页脚只能成对添加。 ( )12、当窗体中字段较多时可以选择以连续窗体形式显示。 ( )13、“窗体视图”下不能进行字体字号、颜色的设置。 ( )14、在报表页眉中可以插入图片。 ( )15、可以在报表的“页面设置”命令对话框中设置打印时的纸张的大小。 ( )16、在预览报表时用户可以任意修改数据。 ( )17、在报表页眉中可以插入图片。 ( )18、窗体中可以使用非绑定文本框创建计算控件显示计算结果。 ( )19、页码的位置一般在报表页脚中。 ( )20、身份证号码不能设为数字型。 三、选择题:(每小题1分,共60分) 1、在Access 中,建立的数据库文件的扩展名为( )。 (A )dbt (B )dbf (C )mdf (D )mdb 2、Access 中,建立查询时可以设置筛选条件,应在( )栏中输入筛选条件。 (A )总计 (B )排序 (C )条件 (D )字段 3、属于交互式控件的是( ) (A )标签控件 (B )文本框控件 (C )命令按钮控件 (D )图像控件 4、Access 中通过( )可以对报表的各个部分设置背景颜色。 (A )格式菜单 (B )编辑菜单 (C )插入菜单 (D )属性对话框 5、在Access 的查询中可以使用总计函数,( )就是可以使用的总计函数之一。 (A )Sum (B )And (C )Or (D )+ 6、数据库DB 、数据库系统DBS 、数据库管理系统DBMS 三者之间的关系是( )。 (A )DBS 包含DB 、DBMS (B )DB 包含DBS 、DBMS (C )DBMS 包含DB 、DBS (D )三者互不包含 7、图形对象应该设为( )型。 (A )图片 (B )OLE 对象 (C )备注 (D )视图 8、数据库的核心是( ) (A )数据库 (B )数据库管理员 (C )数据库管理系统 (D )文件 9、Access 中,在数据表中删除一条记录,被删除的记录( )。 密 封 线 _ ____ 学校 班 学号____ _ 姓 南宁市电子工程学校

关系数据库理论

关系数据库理论

————————————————————————————————作者:————————————————————————————————日期:

第4部分关系数据库理论 复习习题与讲解资料 【主讲教师:钱哨】 一.考试大纲考点要求 1了解关系模式设计中可能出现的问题及其产生原因以及解决的途径。 2 掌握函数依赖、完全函数依赖、部分函数依赖、传递函数依赖的定义,能计算属性的封闭集,并由此得到关系的候选键。 3 掌握第一范式(1NF )、第二范式( 2NF )和第三范式(3NF )的定义,能判别关系模式的范式等级。 4 掌握关系模式的分解(规范到3NF )的步骤、分解的原则和分解的方法。 二.单项选择题 1.为了设计出性能较优的关系模式,必须进行规范化,规范化主要的理论依据是( ) 。A. 关系规范化理论 B. 关系代数理论 C.数理逻辑D. 关系运算理论 2. 规范化理论是关系数据库进行逻辑设计的理论依据,根据这个理论,关系数据库中的关系必须满足:每一个属性都是( ) 。 A. 长度不变的B. 不可分解的 C.互相关联的 D. 互不相关的 3.已知关系模式R(A,B,C,D,E)及其上的函数相关性集合F={A→D,B→C ,E→A },该关系模式的候选关键字是( ) 。 A.AB B. BE C.CDD.DE

4.设学生关系S(SNO,SNAME,SSEX,SAGE,SDPART)的主键为SNO,学生选课关系SC(SNO,CNO,SCORE)的主键为SNO和CNO,则关系R(SNO,CNO,SSEX,SA GE,SDPART,SCORE)的主键为SNO和CNO,其满足( )。 A.1NF B.2NF C.3NF D. BCNF 5. 设有关系模式W(C,P,S,G,T,R),其中各属性的含义是:C表示课程,P表示教师,S表示学生,G表示成绩,T表示时间,R表示教室,根据语义有如下数据依赖集:D={C →P,(S,C)→G,(T,R)→C,(T,P)→R,(T,S)→R },关系模式W的一个关键字是()。 A.(S,C)B. (T,R) C.(T,P) D. (T,S) 6.关系模式中,满足2NF的模式( ) 。 A. 可能是1NF B. 必定是1NF C. 必定是3NF D. 必定是BCNF 7.关系模式R中的属性全是主属性,则R的最高范式必定是()。 A. 1NF B. 2NF C. 3NF D. BCNF 8. 消除了部分函数依赖的1NF的关系模式,必定是()。 A.1NF B.2NF C.3NF D. BCNF 9.如果A->B ,那么属性A和属性B的联系是( ) 。 A.一对多B. 多对一 C.多对多D. 以上都不是 10. 关系模式的候选关键字可以有1个或多个,而主关键字有( )。 A.多个B.0个 C.1个D.1个或多个 11.候选关键字的属性可以有()。 A. 多个B. 0个 C.1个D. 1个或多个 12. 关系模式的任何属性()。 A.不可再分 B. 可以再分C. 命名在关系模式上可以不唯一D.以上都不是 13. 设有关系模式W(C,P,S,G,T,R),其中各属性的含义是:C表示课程,P表示教师,S表示学生,G表示成绩,T表示时间,R表示教室,根据语义有如下数据依赖集:D={ C→P,(S,C)→G,(T,R)→C,(T,P)→R,(T,S)→R },若将关系模式W分解为三个关系模式W1(C,P),W2(S,C,G),W2(S,T,R,C),则W1的规范化程序最高达到( )。 A.1NFB.2NF C.3NFD. BCNF

表和数据库题库

第二部分题目表和数据库 一选择题: 1在VISUAL FOXPRO中,通用型字段G和备注型字段M在表中的宽度都是。 A 2个字节 B 4个字节 C 8个字节 D 10个字节 2复制表文件的结构使用命令。 A APPEND B DISPLAY C COPY STRUCTURE D TYPE 3打开一个数据库,执行命令。 A USE B OPEN DATABASE C CLEAR D CLOSE 4在关系模型中,同一个关系中的不同属性,其属性名 ______。 A 可以相同 B 不能相同 C 可以相同,但数据类型不同 D 必须相同 5 用户在创建某个表的结构时,使用了通用型字段且为表创建了索引,则在保存该表结构后,系统会在磁盘上生成_____个文件。 A 1 B 2 C 3 D 4 6 关于表的备注型字段与通用型字段,以下叙述中错误的是____。 A 字段宽度都不能由用户设定 B 都能存储文字和图象数据 C 字段宽度都是4 D 存储的内容都保存在与表文件名相同的 .FTP 文件中7在创建表索引时,索引表达式可以包含表的一个或多个字段。在下列字段类型中,不能直接选作索引表达式的是_____。 A 货币型 B 日期时间型 C 逻辑型 D 备注型 8在VFP中,如果指定两个表的参照完整性的删除规则为“级联”,则当删除父表中的记录时,____。 A 系统自动备份父表中被删除记录到一个新表中 B 若子表中有相关记录,则禁止删除父表中记录 C 若子表中有相关记录,自动删除子表中所有相关记录 D 不作参照完整性检查,删除父表记录与子表无关 9若为xs.dbf表添加一个宽度为6的字符型字段mc,以下命令中正确的是。 A ALTER TABLE XS ADD MC C(6) B ALTER XS ADD COLUMN M C C (6) C ALTER TABLE XS ALTER MC C(6) D ALTER TABL E XS ADD FIELD MC C(6) 10将“学生”表中班级字段(C型)的宽度由原来的8改为12,正确的命令是 A alter table 学生 alter 班级 c(12) B alter table 学生 drop fields 班级 c(12) C alter table 学生 add 班级 c(12) D alter table 学生 add fields 班级 c(12) 11学生表(XS.DBF)的表结构为:学号(XH,C,6),姓名(XM,C,8),出生日期(CSRQ,D,8)性别(XB,L,1),入学成绩(RXCJ,N,5,1),用Insert命令向XS表添加一条新记录,记录内容为: 下列命令中正确的是______。 A INSERT INTO XS VALUES("984461","李小平",{^1985/12/12},.T.,510) B INSERT TO XS VALUES("984461","李小平",{^1985/12/12},.T.,510) C INSERT INTO XS VALUES(984461,李小平,1985/12/12,.T.,510) D INSERT TO XS VALUES(984461,李小平,1985/12/12,.T.,510) 12 MODIFY STRUCTURE 命令的功能是: A 修改记录值 B 修改表结构

第二章 关系数据库基本原理

第二章关系数据库基本原理 一、选择题 1.关系数据表的关键字可由()字段组成。 A、一个 B、两个 C、多个 D、一个或多个 2.下列关于关系数据库叙述错误的是()。 A、关系数据库的结构一般保持不变,但也可根据需要进行修改 B、一个数据表组成一个关系数据库,多种不同的数据则需要创建多个数据库 C、关系数据表中的所有记录的关键字字段的值互不相同 D、关系数据表中的外部关键字不能用于区别该表中的记录 3.参照完整性规则:表的()必须是另一个表的主键的有效值,或者是空值。 A、候选键 B、外键 C、主键 D、主属性 4.关系数据库规范化是为了解决关系数据库中的()问题而引入的。 A、插入、删除和数据冗余 B、提高查询速度 C、减少数据操作的复杂性 D、保证数据的安全性和完整性 5.关系数据库是若干()的集合。 A、表(关系) B、视图 C、列 D、行 6.在关系模式中,实现“关系中不允许出现相同的元组”的约束是()约束。 A、候选键 B、主键 C、键 D、超键 7.约束“年龄限制在18~30岁之间”属于DBMS的()功能。 A、安全性 B、完整性 C、并发控制 D、恢复 8.反映现实世界中实体及实体间联系的信息模型是()。 A、关系模型 B、层次模型 C、网状模型 D、E-R模型 9.关系数据模型的3个组成部分中,不包括()。 A、完整性规则 B、数据结构 C、数据操作 D、并发控制 10.如何构造出一个合适的数据逻辑结构是()主要解决的问题。 A、关系数据库优化 B、数据字典 C、关系数据库规范化理论 D、关系数据库查询 11.学生社团可以接纳多名学生参加,但每个学生只能参加一个社团,从社团到学生之间的 联系类型是()。 A、多对多 B、一对一 C、多对一 D、一对多 12.关系模式的任何属性()。 A、不可再分 B、可以再分 C、命名在关系模式上可以不唯一 D、以上都不是 13.一个m:n联系转换为一个关系模式。关系的关键字为()。 A、某个实体的关键字 B、各实体关键字的组合 C、n端实体的关键字 D、任意一个实体的关键字 14.候选关键字的属性可以有()。 A、多个 B、0个 C、1个 D、1个或多个 15.关系模型中有三类完整性约束:实体完整性、参照完整性和域完整性。定义外部关键字 实体的是哪一类完整性()? A、实体完整性 B、域完整性 C、参照完整性 D、实体完整性、参照完整性和域完整性 16.设已知F={C→A,CG→D,CG→B,CE→A,ACD→B},从中去掉哪些函数依赖关系后得到 的新的函数依赖集合F1与F是等价的()。

要在数据库中创建一个表要先定义表中的字段名

### ~~~1 要在数据库中创建一个表要先定义表中的字段名。 ~n ~~~2 在要建立关系的多个表中,有一个表依照关系字段建立索引即可。 ~n ~~~3 主键字段中允许有空值. ~n ~~~4 在一个被定义为主键的字段中不可以有两个相同的记录。 ~y ~~~5 在一个表中可以有多个索引,也可以有多个字段建立一个索引。 ~y ~~~6 为一个表建立索引后可以改变数据在数据表中的物理顺序。 ~n ~~~7 建立索引就是创建主键 ~n ~~~8 一个表在形式上就是一个二维表 ~y ~~~9 表的每一列称为一个字段。 ~y ~~~10 表的每一行称为一个字段。 ~n ~~~11 创建表就必须先定义表的结构 ~y ~~~12 查询可以改变数据在数据库中的存储 ~n ~~~13 要在数据库中的多个表间建立关系,必须先给各个表建立主键或索引。~y ~~~14 索引的属性值只有两种取值。 ~n ~~~15

索引是为了加快查询数据的速度而建立的,它实质上是一种逻辑排序 ~y ~~~16 一个表中只能定义一个主键,它是由表中的一个或多个字段组成。 ~y ~~~17 数据访问页作为Access中的一个数据库对象,是一种特殊的Web页。 ~y ~~~18 生成报表后,报表中的数据是可以修改的 ~n ~~~19 筛选所查找到的信息是一个或一组满足条件的记录而不是具体的数据项。~y ~~~20 一列存放的数据类型可以不相同。 ~n ~~~21 一张表中只能有一个主键 ~y ~~~22 按“ctrl+F4”组合键可以退出Access ~n ~~~23 表的结构也可以称为表头,是由一个表中的所有字段名构成的 ~y ~~~24 "1姓名"是一个合法的字段名 ~n ~~~25 字段名的最大长度是64个字符 ~y ~~~26 字段名的最大长度是64个字 ~n ~~~27 备注类型的字段可以建立索引 ~n ~~~28 超链接和OLE对象的字段不可以建立索引 ~y ~~~29 类型为备注、超链接和OLE对象的字段不能用于分组记录 ~y

相关主题