业务需求,就应该做出一些决策。只有确定明确了业务内容,才能进行数据库的总体设计。
(3)创建数据字典:在创建数据字典时。首先要明确每个字段的数据类型和在每个表内的主键、外键。创建数据字典确实有点费时但对其他开发人员要了解整个设计却是完全必要的。早期的表创建能有助于避免今后面临的可能混乱,从而可以让任何了解数据库的人都明确如何从数据库中获得数据。这对于表明表之间关系很有用,数据字典说明了每个字段的用途以及任何可能存在的别名。对 SQL 表达式的文档化来说这是完全必要的。
3.4 数据字典
(1)数据库表名的定义使用:重点字;重点字可以是多个英文单词的组合,从组合的第二单词起首字母大写,字段命名是能表达字段内容的英文单词的组合,组合方式同表名重点字相同。
(2)NOT NULL 不填表可为空。
(3)数据类型不使用固定数据库的类型,标识大众类型,如字符串、字符、数字等。这样在更改数据库时需求的数据是可移植的
(4)输写数据表在数据库中的物理名称,可用自己熟悉的语言再定义表名称,方便沟通。
(5)长度定义又数据类型决定:如字符串可选8000以下,数字可在50位之间,字符只允许一位。
(6)输入方式表示数据的来源:生成表由程序或数据库的索引自动生成,而不需人工录入;输入表示通过文本框等输入的数据;选择表单选框、复选框、下拉列表等通过选择输入的数据;自定获取是为外码的输入设定的,它由程序自动获取。
表3.-1 数据字典
Table 3.-1 Data Dictionary
7
数据字典 名称:角色表 别名:roles 种类:二维表
描述:用于记录用户的登陆的基本信息及分配的权限 定义:角色表=角色编号+角色登陆名+角色名称 Roles=ID+NAME+TITLE 名称:用户信息表 别名:userinfo 种类:二维表
描述:用于记录用户的基本信息内容,主要是为了学生与教师更好的沟通。 定义:用户信息表=用户信息编号+用户登陆名+用户密码+用户姓名 Userinfo=ID+NAME+PASSWORD+FULLNAME 名称: 教师表 别名:teacher 种类:二维表
描述:用于记录教师的基本信息,用户名及密码等。
定义:教师表=教师编号+教师登陆名+教师用户密码+教师姓名 Teacher=ID+NAME+PASSWORD+FULLNAME 名称: 学生表 别名:student 种类:二维表
描述:用于记录学生用户的基本信息,用户名及密码等。
定义:学生表=学生编号+班级编号+学生登陆名+学生用户密码+学生姓名 Student=ID+CLASS-ID+NAME+PASSWORD+FULLNAME 名称: 班级表 别名:class 种类:二维表
描述:用于记录班级的登陆的基本信息。
定义: 班级表=班级编号+班级名称 Class=ID+TITLE 名称: 教师选择班级表 别名:teacher-class 种类:二维表
描述:用于记录教师用户选择班级时的信息。
8
定义:教师选择班级表=班级编号+教师编号 Teacher-class=CLASS-ID+TEACHER-ID 名称: 考试试卷表 别名:test-paper 种类:二维表
描述:用于记录考试试卷的基本内容等。
定义:考试试卷表=考试试卷编号+考试试卷名称+出题教师编号+考试时间 Test-paper=ID+TITLE+TACHER-ID+EXAM-TIME 名称: 选择题表 别名:select-question 种类:二维表
描述:用于记录教师所出的选择题的一些基本内容等。 定义:选择题表=选择题编号+考试试卷编号+选择题名称+答案 Select-question=ID+PAPER-ID+TITLE+ANSWER 名称: 选择题待选项表 别名:selected 种类:二维表
描述:用于记录教师所出的选择题中待选项的基本内容等。 定义:选择题待选项表=待选项编号+选择题目+ 选项+问题编号 Selectd=ID+CONTENT+ITEM+QUESTION-ID 名称: 判断题表 别名:yesno-question 种类:二维表
描述:用于记录教师所出的判断题的一些基本内容等。 定义:判断题表=判断题编号+考试试卷编号+判断题名称+答案 Yesno-question=ID+PAPER-ID+TITLE+ANSWER
3.5 数据库的物理设计
主要表的结构如下:
表3-1 角色表 Table 3-1 Role Table
9
系统名称 小型外语网络考试系统 表 名 角色表 字段标识 数据类型 位数 属性 描述 备注 ID Varchar 255 NOT NULL 角色编号 主键 Varchar NAME 255 Default NULL 角色登陆名 Varchar Default TITLE 255 NULL 角色名称 表3-2 用户信息表
Table 3-2 User Information Form
系统名称 小型外语网络考试系统 表 名 用户信息表 字段标识 数据类型 位数 属性 描述 备注 ID Varchar 255 NOT NULL 用户信息编号 主键 Varchar NAME 255 Default NULL 用户登陆名 Varchar PASSWORD 255 Default NULL 用户密码 Varchar FULLNAME 255 Default NULL 用户姓名 表3-3 教师表 Table 3-3 List of teachers
系统名称 小型外语网络考试系统 表 名 教师表 字段标识 数据类型 位数 属性 描述 备注 ID Varchar 255 NOT NULL 教师编号 主键 Varchar NAME 255 Default NULL 教师登陆名 Varchar PASSWORD 255 Default NULL 教师用户密码 Varchar FULLNAME 255 Default NULL 教师姓名
表3-4 学生表 Table 3-4 students form
系统名称 小型外语网络考试系统 10
表 名 学生表 字段标识 数据类型 位数 属性 描述 备注 ID Varchar 255 NOT NULL 学生编号 主键 Varchar CLASS-ID 255 Default NULL 班级编号 Varchar NAME 255 Default NULL 学生登陆名 Varchar PASSWORD 255 Default NULL 学生用户密码 Varchar FULLNAME 255 Default NULL 学生姓名 表3-5 班级表 Table 3-5 Class Table
系统名称 小型外语网络考试系统 表 名 班级表 字段标识 数据类型 位数 属性 描述 备注 ID Varchar 255 NOT NULL 班级编号 主键 Varchar TITLE 255 Default NULL 班级名称 表3-6 教师选择班级表
Table 3-6 teachers to choose the class table
系统名称 小型外语网络考试系统 表 名 教师选择班级表 字段标识 数据类型 位数 属性 描述 备注 CLASS-ID Varchar 255 NOT NULL 班级编号 主键 TEACHER-ID Varchar 255 NOT NULL 教师编号 主键 11