数据库和数据库表的操作_第1页
数据库和数据库表的操作_第2页
数据库和数据库表的操作_第3页
数据库和数据库表的操作_第4页
数据库和数据库表的操作_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数据库和数据库表的操作一实验目的1. 掌握数据库的创建。2. 掌握数据库表结构的建立和表记录的输入。3. 掌握表索引的建立和使用。4. 掌握数据库表的有效性规则的设置和表之间永久关系的建立。二实验内容1. 在“学生管理.pjx”中创建一个数据库,取名为“学生.dbc”。2. 将自由表xs.dbf加入“学生”数据库中,并改名为学生登记表.dbf。在“学生”数据库中再创建两个数据表:课程登记表.dbf和学生成绩表.dbf,其结构和内容如表4-1、表4-2所示。其中,学生成绩表.dbf的内容未输入完全,请读者自行补全。表4-1 课程登记表课程编号(I)课程名称(C12)1计算机基础2大学英语3数学建

2、模4计算机网络5高等数学6思想品德表4-2 学生成绩表学号(C8)课程编号(I)成绩(N, 3, 0)学号课程编号成绩sh030001187sh030003175sh030001298sh030003265sh030001385sh030003385sh030001474sh030003452sh030001552sh030003552sh030001665sh030003674sh030002152sh030004185sh030002265sh030004265sh030002385sh030004367sh030002474sh030004468sh030002589sh03000459

3、8sh030002690sh0300046903. 为数据库表设置属性。(1)为学生登记表的“性别”字段建立有效性规则。规则和提示信息:性别只能为男或女;该字段的默认值:男。(2)为学生成绩表的“成绩”字段建立有效性规则。规则和提示信息:成绩在0-100之间;该字段的默认值:0。4. 建立索引。为学生登记表的“学号”字段建立主索引,为课程登记表的“课程编号”字段建立主索引,为学生成绩表的“学号”和“课程编号”分别建立普通索引。5. 将xs.dbf中的所有记录复制到xs2.dbf中,在xs2.dbf中,建立以下4个索引(前两个为单索引,后两个为复合索引,即多字段索引)。学号(候选索引,取名为学号

4、);出生日期(普通索引,取名为出生日期);性别与入校总分(普通索引,取名为xbzf),性别与出生日期(普通索引,取名为xbrq)。6. 在xs2.dbf中,分别用LOCATE(顺序查询)和SEEK(索引查询)命令,实现逐条查询出性别为女的学生名单。7. 建立表之间的永久关系。为学生登记表与学生成绩表建立一对多关系,为课程登记表与学生成绩表建立一对多关系。8. 设置参照完整性规则。要求:在学生登记表和学生成绩表之间以及课程登记表和学生成绩表之间,定义删除规则为“级联”,更新和插入规则为“限制”。三.解答与提示1. 在“学生管理.pjx”中创建一个数据库,取名为“学生.dbc”。 建立工作目录“E

5、:学生管理”。 打开“学生管理.pjx”,选择“数据”选项卡的“数据库”,单击“新建”按钮,选择“新建数据库”,打开“创建”对话框。 在对话框中输入数据库的名称“学生”,单击“保存”按钮,项目被保存在刚才建立的默认目录“E:学生管理”下,并自动打开“数据库设计器”窗口。 关闭“数据库设计器”窗口回到项目管理器中。提示:数据库文件建立后,会同时生成与之相关的另外两个文件,它们是扩展名为.dbt的数据库备注文件和扩展名为.dcx的数据库索引文件。2. 将自由表xs.dbf加入“学生”数据库中,并改名为学生登记表.dbf。在“学生”数据库中再创建两个数据表:课程登记表.dbf和学生成绩表.dbf。

6、展开“项目管理器”的“数据”选项卡中的“数据库”,再展开刚才建立的“学生”数据库,选择“表”,单击“添加”按钮,在“添加表”对话框中单击xs.dbf,单击“确定”按钮,xs.dbf就添加在数据库“学生”中了。 右键单击项目管理器中的xs表,从快捷菜单中选择“重命名”,打开“重命名文件”对话框,如图1.8所示,在“到”文本框中将xs.dbf改名为学生登记表.dbf。提示:改名时注意不要修改文件的扩展名。通过这种方法将表文件改名后,与之相关的如.fpt、.cdx文件均会自动修改。图 1.8 重命名表文件 单击“学生”数据库下的“表”,单击“新建”按钮,再单击“新建表”,打开“创建”对话框,在对话框

7、中输入创建的表文件“课程登记表”,单击“保存”按钮,打开“表设计器”,如图1.9所示,在“表设计器”中输入课程登记表.dbf中的表结构内容。下面的操作与自由表的建立完全一样,不再赘述。提示:可以看出,自由表与数据库表的表设计器有所不同,数据库表可以进行更多的规则设置。图 1.9 数据库表“表设计器”对话框 用相同的方法建立学生成绩表。3. 为数据库表设置属性。(1)为学生登记表的“性别”字段建立有效性规则。规则和提示信息:性别只能为男或女;该字段的默认值:男。 选择学生登记表,单击“修改”按钮,打开学生登记表的表设计器。 单击“字段”选项卡,选择“性别”字段,在“字段有效性”区的 “规则”框中

8、输入:性别=“男” .OR. 性别=“女”在“信息”框中输入:“性别只能为男或女”在“默认值”框中输入:“男” 单击“确定”按钮,关闭表设计器。(2)为学生成绩表的“成绩”字段建立有效性规则。规则和提示信息:成绩在0-100之间;该字段的默认值:0。 选择学生成绩表,单击“修改”按钮,打开学生成绩表的表设计器。 单击“字段”选项卡,选择“成绩”字段,在“字段有效性”区的 “规则”框中输入:成绩>=0 AND 成绩<=100,在“信息”框中输入:“成绩只能在0到100之间”在“默认值”框中输入:0 单击“确定”按钮,关闭表设计器。4. 建立索引。为学生登记表的“学号”字段建立主索引,

9、为课程登记表的“课程编号”字段建立主索引,为学生成绩表的“学号”和“课程编号”分别建立普通索引。 选择学生登记表,单击“修改”按钮,打开学生登记表的表设计器。单击“字段”选项卡,在“学号”字段的“索引”下拉列表框中选择“升序”(或降序)。 单击“索引”选项卡,选择“学号”索引的“类型”下拉列表框中的“主索引”项,将“学号”索引设置为主索引。 用相同的方法建立课程登记表的主索引。 选择学生成绩表,单击“修改”按钮,打开学生成绩表的表设计器。单击“字段”选项卡,在“学号”字段的“索引”下拉列表框中选择“升序”(或降序),在“课程编号”字段的“索引”下拉列表框中选择“升序”(或降序)。单击“确定”按

10、钮,关闭表设计器。5. 将xs.dbf中的所有记录复制到xs2.dbf中,在xs2.dbf中,建立以下4个索引(前两个为单索引,后两个为复合索引,即多字段索引)。学号(候选索引,取名为学号);出生日期(普通索引,取名为出生日期);性别与入校总分(普通索引,取名为xbzf),性别与出生日期(普通索引,取名为xbrq)。 使用以下命令序列建立新表xs2并打开: USE xs COPY TO xs2.dbf USE xs2 选择“表表设计器”,进入xs2的表设计器,单击“字段”选项卡,在“学号”字段的“索引”下拉列表框中选择“升序”(或降序);在“出生日期” 段的“索引”下拉列表框中选择“升序”(或

11、降序)。 单击“索引”选项卡,可以看到xs2已建立两个普通索引,且索引名自动为字段名。选择“学号”索引的“类型”下拉列表框中的“候选索引”项,将“学号”索引设置为候选索引。 在“索引名”中输入“xbzf”,在“类型”中选择“普通索引”,在“表达式”中输入“性别+str(入校总分)”,建立两个字段的索引,表明首先按性别排列,性别相同再按入校总分排列。 在“索引名”中输入“xbrq”,在“类型”中选择“普通索引”,在“表达式”中输入“性别+dtoc(出生日期, 1)”,建立两个字段的索引,表明首先按性别排列,性别相同再按出生日期排列。 单击“确定”按钮,保存所做的修改。提示:4个索引是不同的索引项

12、,为表建立索引后,会自动生成同名的.cdx索引文件。说明:建立多字段索引时,若组成表达式的字段类型不同,必须使用函数对字段类型进行转换。一般都将相应的字段转换成C型数据,STR( )函数可将N型数据转换成C型数据,DTOC( )函数可将D型数据转换成C型数据。对DTOC( )函数,加参数“1”可以保证按正确的日期顺序进行比较。也可以使用命令建立索引,参考命令序列如下: USE xs2 INDEX ON 学号 TAG 学号 &&建立“学号”索引标识 INDEX ON 出生日期 TAG 出生日期 &&建立“出生日期”索引标识 INDEX ON 性别+str(入校总分

13、) TAG xbzf &&建立“性别与入校总分”索引标识 INDEX ON 性别+dtoc(出生日期, 1) TAG xbrq &&建立“性别与出生日期”索引标识 USE &&关闭表文件 6. 在xs2.dbf中,分别用LOCATE(顺序查询)和SEEK(索引查询)命令,实现逐条查询出性别为女的学生名单。常用命令参考:(1)用LOCATE/CONTINUE命令实现,参考命令序列如下 USE xs2 LOCA for 性别=“女 ” &&找到第1个满足条件的记录 DISP &&显示找到的记录 CONT &a

14、mp;&继续查找满足条件的第2个记录 DISP &&显示找到的记录 CONT &&继续查找满足条件的第3个记录 &&重复执行DISP、CONT命令,直到状态栏显示“已到定位范围末尾”USE(2)用SEEK命令实现,参考命令序列如下 USE xs2 INDEX ON 性别 TAG xb &&建立“性别”索引标识,该索引自动为主控索引 SEEK “女” DISP &&显示找到的第1个记录 SKIP &&继续查找连续第2个满足条件的记录 DISP &&显示找到的第2个记录 SKIP &&继续查找连续第3个满足条件的记录 &&重复执行DISP、SKIP命令,直到显示的记录的性别不为“女”USE7. 建立表之间的永久关系。为学生登记表与学生成绩表建立一对多关系,为课程登记表与学生成绩表建立一对多关系。 选择“学生”数据库,单击“修改”按钮,打开数据库设计器,用鼠标左键选中学生登记表中的主索引“学号”,按住鼠标左键,并拖动鼠标到学生成绩表的普通索引“学号”上,鼠标箭头会变成小矩形状,最后释放鼠标。 用同样的方法可以建立课程登记表和学生成

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论