精华内容
下载资源
问答
  • 创建名为JWGL_DB的数据库,包含一个主数据文件和一个事务日志文件。主数据文件的逻辑名为JWGL_DB_DATA,操作系统文件名为JWGL_DB_DATA.MDF,初始容量大小为5MB,最大容量为20MB,文件的增长量为20%。事务日志文件的...

    创建名为JWGL_DB的数据库,包含一个主数据文件和一个事务日志文件。主数据文件的逻辑名为JWGL_DB_DATA,操作系统文件名为JWGL_DB_DATA.MDF,初始容量大小为5MB,最大容量为20MB,文件的增长量为20%。事务日志文件的逻辑文件名为JWGL_DB_LOG,物理文件名为JWGL_DB_LOG.LDF,初始容量大小为5MB,最大容量为10MB,文件增长量为2MB,最大空间不受限制。数据文件与事务日志文件都放在H盘指定目录下

    --(1)
    Create DataBase JWGL_DB
    On Primary(
    Name = JWGL_DB_DATA,
    FileName = 'H:\Sql Server\SQLDataBase\JWGL_DB_DATA.MDF',
    Size = 5MB,
    MaxSize = 20MB,
    FileGrowth = 20%)
    
    Log On
    (Name=JWGL_DB_LOG,
    FileName = 'H:\Sql Server\SQLDataBase\JWGL_DB_LOG.LDF',
    Size = 5MB,
    MaxSize = 10MB,
    FileGrowth  =2MB
    )
    go
    
    use  [JWGL_DB]
    go
    
    --(2)
    Create Table 学校
    (学校编号 int identity(1,1) Constraint [column_学校(学校编号)_pk] Primary key not null,
    学校名称 varchar(30) not null,
    )
    
    Create Table 学院
    (学院编号 int identity(1,1) Constraint [column_学院(学院编号)_pk] Primary Key not null,
    学院名称 varchar(20) not null,
    学校编号 int not null
    Constraint [FK学院(学校编号)] Foreign Key
    	References 学校(学校编号)
    On Delete Cascade On Update Cascade
    )
    
    Create Table 专业
    (专业编号 int identity(1,1) Constraint [column_专业(专业编号)_pk] Primary key not null,
    专业名称 varchar(20) not null,
    学院编号 int not null
    Constraint [FK专业(学院编号)] Foreign Key
    	References 学院(学院编号)
    On Delete Cascade On Update Cascade
    )
    
    Create Table 班级
    (
    班级编号 int identity(1,1) Constraint [column_班级(班级编号)_pk] Primary Key not null,
    班级名称 varchar(20) not null,
    专业编号 int not null
    Constraint [FK班级(专业编号)] Foreign Key
    	References 专业(专业编号)
    On Delete Cascade On Update Cascade
    )
    
    Create Table 学生
    (
    学号 char(12) Constraint [column_学生(学号)_pk] Primary Key not null,
    姓名 varchar(20) not null,
    性别 bit check(性别=0 or 性别=1) null ,
    手机号 varchar(20) null,
    家庭电话 varchar(20) null,
    家庭地址 varchar(50) null,
    备注 nvarchar(Max) null,
    班级编号 int not null
    Constraint [Fk学生(班级编号)] Foreign Key
    	References 班级(班级编号)
    On Delete Cascade On Update Cascade
    )
    use JWGL_DB
    go
    
    --2013-06-02-19:24
    /*alter table 学生
    add 注册日期 datetime default(getdate()) null*/
    
    
    Create Table 教师
    (
    教师编号 int identity(1,1) Constraint [column_教师(教师编号)_pk] Primary Key not null,
    姓名 varchar(20) not null,
    性别 char(1) default('0') check(性别='0' or 性别='1'),
    手机号码 varchar(20) not null
    )
    
    Create Table 课程
    (
    课程编号 int identity(1,1) constraint [column_课程(课程编号)_pk] Primary Key not null,
    课程名称 varchar(50) not null,
    学分 tinyint constraint ck_学分 check(学分>0 and 学分 <100),
    开课学年 date constraint ck_开课学年  null,		--delete check(DateDiff(year,开课学年,getDate())=0) 
    开课学期 tinyint constraint ck_开课学期 check(开课学期>0) null,
    理论学时 tinyint constraint ck_理论学时 check(理论学时>0) null,
    实践学时 tinyint constraint ck_实践学时 check(实践学时>0) null,
    备注 nvarchar(Max) null,
    课程类型 varchar(20) constraint ck_课程类型 check(课程类型 = '一体化' or 课程类型='纯理论' or 课程类型='纯实践') null,
    核心课程 bit constraint ck_核心课程 check(核心课程 = 0 or 核心课程=1)  null,
    课程性质 varchar(20) constraint ck_课程性质 check(课程性质 = '必修课' or 课程性质='选修课') null,
    考核方式 varchar(20) constraint ck_考核方式 check(考核方式 = '考试' or 考核方式='考查') null,
    课程归属 varchar(20) constraint ck_课程归属 check(课程归属 = '基本素质与能力课' or 课程归属='职业能力课') null,
    )
    
    
    --alter table 课程
    --add column 专业编号 int not null Constraint [Fk课程(专业编号)] Foreign Key
    --	References 专业(专业编号) On Delete Cascade On Update Cascade, 
    
    /*alter table 课程
    add 课程归属 varchar(20) constraint ck_课程归属 check(课程归属 = '基本素质与能力课' or 课程归属='职业能力课') null
    */
    
    /********为多对多关系的实体类创建中间表***********/
    Create Table 专业_课程
    (专业编号 int not null Constraint [Fk专业_课程(专业编号)] Foreign Key
    	References 专业(专业编号) On Delete Cascade On Update Cascade,			--此处应该引用
    课程编号 int not null Constraint [Fk专业_课程(课程编号)] Foreign Key 
    	References	课程(课程编号) On Delete Cascade On Update Cascade,
    constraint column_专业编号_课程编号_pk Primary Key(专业编号,课程编号)
    )
    
    Create Table 学生_课程
    (学号 char(12) not null Constraint [FK学生_课程(学号)] Foreign Key
    	References 学生(学号) On Delete Cascade On Update Cascade,
    课程编号 int not null Constraint [FK学生_课程(课程编号)] Foreign Key
    	References 课程(课程编号) On Delete Cascade On Update Cascade,
    课程成绩 tinyint constraint ck_课程成绩 check(课程成绩>=0 and 课程成绩<=100) null,
    constraint column_学生编号_课程编号_pk Primary Key(学号, 课程编号)
    )
    
    Create Table 教师_课程
    (
    教师编号 int not null Constraint [FK教师_课程(教师编号)] Foreign Key
    	References 教师(教师编号) On Delete Cascade On Update Cascade,
    课程编号 int not null Constraint [FK教师_课程(课程编号)] Foreign Key
    	References 课程(课程编号) On Delete Cascade On Update Cascade,
    课程名称 varchar(20) not null,
    Constraint column_教师编号_课程编号_pk Primary Key(教师编号,课程编号)
    )
    
    --(3)
    /*********对多值属性处理***********/
    
    /*Create Table 课程类型
    (
    	课程类型编号 int identity(1,1) Constraint column_课程类型编号_pk Primary Key not null,
    	课程类型名称	char(12) not null,
    	课程编号 int null Constraint [FK课程类型(课程编号)] Foreign Key 
    	References 课程(课程编号)
    )
    
    Create Table 课程_课程类型
    (
    	课程类型编号 外键
    	课程编号	外键
    )
    
    Create Table 核心课程
    (
    	核心课程编号 int identity(1,1) Constraint column_核心课程编号_pk Primary Key not null,
    	核心课程名称	char(12) not null,
    	课程编号 int null Constraint [FK核心课程(课程编号)] Foreign Key 
    	References 课程(课程编号)
    )
    
    Create Table 课程性质
    (
    	课程性质编号 int identity(1,1) Constraint column_课程性质编号_pk Primary Key not null,
    	课程性质名称	char(12) not null,
    	课程编号 int null Constraint [FK课程性质(课程编号)] Foreign Key 
    	References 课程(课程编号) 
    )
    
    /*Create Table 考核方式
    (
    	考核方式编号 int identity(1,1) Constraint column_考核方式编号_pk Primary Key not null,
    	考核方式名称	char(12) not null,
    	课程编号 int null Constraint [FK考核方式(课程编号)] Foreign Key 
    	References 课程(课程编号)
    )
    
    Create Table 课程归属
    (
    	课程归属编号 int identity(1,1) Constraint column_课程归属编号_pk Primary Key not null,
    	课程归属名称	char(12) not null,
    	课程编号 int null Constraint [FK课程归属(课程编号)] Foreign Key 
    	References 课程(课程编号)
    )*/
    
    --(4)Other SQK practice tests
    select *        
    from [sys].check_constraints
    
    select name                       
    from [sys].foreign_keys
    
    /*
    alter table 教师_课程
    drop constraint [FK教师_课程(课程编号)]
    alter table 教师_课程           
    add Constraint [FK教师_课程(课程编号)] Foreign Key(课程编号) 
    	References	课程(课程编号) On Delete Cascade On Update Cascade
    */
    */
    
    alter table Table_1
    add Constraint [FKTable_1(TypeId)] Foreign Key(TypeId)
    	References Table_2 On Delete Cascade On Update Cascade
    

    写于2013-06-02-19:24

    展开全文
  • 教务管理系统数据库

    2017-05-02 16:34:12
    使用C#WPF实现的教务处管理系统数据库
  • 教务管理系统 数据库设计

    千次下载 热门讨论 2011-12-25 21:52:54
    数据库原理课,设计了一个高校教务管理系统数据库,word文档,包括需求分析,ER图,具体的代码设计,SQL语句的数据库查询,创建视图
  • 简单的教务系统数据库可以由如下六个表组成。下面给出了各个表格的主键与外键。 学生表 主键为学号,无外键 课程表 主键为课程编号,无外键 老师表 主键为教师工号,无外键 开课表 主键为教师工号、课程编号、学期...

    简单的教务系统数据库可以由如下六个表组成。下面给出了各个表格的主键与外键。

    学生表

    主键为学号,无外键

    课程表

    主键为课程编号,无外键

    老师表

    主键为教师工号,无外键

    开课表

    主键为教师工号、课程编号、学期(老师可以在不同学期开相同的课程)、课程班级(老师可以在同一个学期开设课程班级不同的同一门课)

    外键为教师工号(老师表的主键)、课程编号(课程表的主键)

    学生选课表

    主键为学号、课程编号、学期(学生可以在不同学期选相同的课程,如重修)

    外键为学号(学生表的主键)、课程编号(课程表的主键)

    排课表

    主键为课程编号、学期、课程班级、上课时间(同一门课程可以在不同时间排课)

    外键为课程编号(课程表的主键)

    展开全文
  • 教务系统数据库设计 (一)

    千次阅读 2012-12-31 15:07:39
    从11月中旬以来一直在做教务系统,开始阶段是各个子系统独立开发,包括评教系统、选修课系统、考试系统三个子系统,这三个系统已经有原型,我们采用的都是原型开发,因为需求已经确定,研究了一段时间把用例图、类图...
    
    

            从11月中旬以来一直在做教务系统,开始阶段是各个子系统独立开发,包括评教系统、选修课系统、考试系统三个子系统,这三个系统已经有原型,我们采用的都是原型开发,因为需求已经确定,研究了一段时间把用例图、类图等画了画,完成了大部分了,快该写代码了然后,老师说需要把这三个系统整合在一起,做一个教务系统,教务系统是一个平台,可以往里面扩充子系统,使得信息可以共享,避免信息孤岛的出现。

     

            对于想要建立共享性、集成性高的系统即要设计一个结构紧密又灵活性好的共享数据库,下面一段很长的时间就是设计教务系统的数据库……

           下面是我们数据库设计的过程中遇到的一些问题

     

           1. 数据库表之间该不该多用主外键呢 ?

                先说我们做的评教系统,单独从这一个系统角度考虑,建立我们自己的数据库表,我们多加一些主键无所谓,加多点主键还可以使得表结构严谨,数据一致性好,但是当我们再加入新的系统的时候,把选课系统也加入到这个系统中,那么评教系统中的表就需要从新设计里面的主外键,出现这样的情况是当初设计表结构时没有考虑到灵活性,单独从一个系统角度考虑,即过多使用主外键也会使得表结构过于紧密、灵活性差,在什么情况下使用还需多多考虑。

     

                那主外键就不使用了吗?当然不是,既然主外键可以使得表一致性高、扩展性差,那我们可以避开缺点,使用优点,在需要扩展的地方尽量不使用主外键关系,而在要求扩展性不高的地使用主键外键,根据这一原则更改表结构

               更改后的数据库设计,如下

              

               新增了中间表(关系表)充当主外键的作用维持数据一致性,把基础表中的键关系移动到了基础表与关系表中,这看上去好像是降低了基础表与基础表之间的耦合度,给基础表解耦,这让我想起了中介者模式,通过一个中介类来给各个对象解耦,通过中介通信,而不是让各个类直接通信,举个例子:各个国家中国、美国、日本等有时并不直接交涉而不是通过联合国,给各个国家之间解耦,不管是在生活、学习中,设计模式的思想无处不在,值得学习。

              

           2.  基础表与子系统表如何划分 ?

              从每一个子系统方面考虑,子系统表无论放基础里还是放自己系统里都可以实现,其区别是放基础里面别的子系统可以使用,来共享信息,分表的时候按着信息是否需要共享来分表,如果这种信息不需要共享,那我们就没有必要往基础表里面放,如果放在基础表里面反而会增加基础表负担,增加数据库表冗余。

     

              举个例子:例如TB_Student、TB_Teacher、TB_College、TB_Department等表,只要是学校里的系统,一般都会用到这些信息,很显然,这些表应该归为基础表,另外还有一些特殊关系表也应该规则基础表,如老师课程关系表等,这也是基础信息,这些信息不依附于某个子系统。

             

              其中,也还有很多细节问题,不一一列举,下面是数据库设计一点点经验

     

              我们设计数据库时可以遵循这样的设计原则:

     

              (1) 数据库中表的个数越少越好。

                       形成了对客观世界的高度抽象,进行了系统的数据集成,防止了打补丁式的设计

              (2) 表中组合主键的字段个数越少越好。

                      因为主键的作用,一是建主键索引,二是做为子表的外键,所以组合主键的字段个数少了,不仅节省了运行时间,而且节省了索引存储空间;

              (3) 表中的字段个数越少越好。

                      减少数据冗余,一种方法是“列变行”,所谓“列变行”,就是将主表中的一部分内容拉出去,另外单独建一个子表。这样就防止了将子表中的字段拉入到主表中去,在主表中留下许多空余的字段。

     

              (4) 降低范式,增加冗余, 少用触发器, 多用存储过程。

              (5) 当计算非常复杂、而且记录条数非常巨大时,复杂计算要先在数据库外面。

     

              (6) 发现某个表的记录太多,例如超过一千万条,则要对该表进行水平分割。水平分割的做法是,以该表主键PK的某个值为界线,将该表的记录水平分割为两个表。若发现某个表的字段太多,例如超过八十个,则垂直分割该表,将原来的一个表分解为两个表。

              (7) 对数据库管理系统DBMS进行系统优化,即优化各种系统参数,如缓冲区个数。

     

     

    展开全文
  • 系统概述:系统功能:数据库设计:用户:管理员:板块:主贴:回复贴:设计表:user表列名数据类型允许NULL说明uIDINT否用户编号userNameVARCHAR(20)否用户姓名userPasswordVARCHAR(20)否用户密码userEmailVARCHAR...

    系统概述:

    1. 系统功能:

      ddb0e56281af7d240025cb921fcc0a7b.png

    2. 数据库设计:

    • 用户:

    d289a579265657d482765ada9bb50960.png

    • 管理员:

      20d467e2e23a2b148bd62e318971709f.png

    • 板块:

      732e0e31f7b3db8d1ce627dabe1e790c.png

    • 主贴:

    a2e092c4d3dababef9db45e08a5410ee.png

    • 回复贴:

    23639aaf57d109af508d776ca067530e.png

    设计表:

    1. user表

      列名数据类型允许NULL说明
      uIDINT用户编号
      userNameVARCHAR(20)用户姓名
      userPasswordVARCHAR(20)用户密码
      userEmailVARCHAR(20)用户Email
      userBirthdayDATE用户生日
      userSexBIT用户性别
      userClassINT用户等级
      userStatementVARCHAR(150)用户个人说明
      userRegDateTIMESTAMP用户注册时间
      userPointINT用户积分
    2. admin表

      列名数据类型允许NULL值说明
      adminIDINT管理员编号
      adminNameVARCHAR(20)管理员名称
      adminPasswordVARCHAR(20)管理员密码
    3. section表

      列名数据类型允许NULL值说明
      sIDINT板块编号
      sNameVARCHAR(20)板块名称
      sMasterIDINT版主编号
      sStatementVARCHAR(200)板块说明
      sClickCountINT板块点击次数
      sTopicCountINT板块主题数
    4. topic表

      列名数据类型允许NULL值说明
      tIDINT主贴编号
      tsIDINT板块编号
      tuidINT用户编号
      tReplyCountINT回复次数
      tEmotionVARCHAR(20)主贴表情
      tTopicVARCHAR(20)主贴标题
      tContentsTEXT主贴内容
      tTimeTIMESTAMP发帖时间
      tClickCountINT点击次数
      tLastClickTTIMESTAMP最后点击时间

      作为代表,只写这一个表的创建代码:

      mysql> CREATE TABLE topic
      -> (
      -> tID INT PRIMARY KEY UNIQUE NOT NULL,
      -> tSID INT NOT NULL,
      -> tuid INT NOT NULL,
      -> tReplyCount INT NOT NULL,
      -> tEmotion VARCHAR(20) NOT NULL,
      -> tTopic VARCHAR(20) NOT NULL,
      -> tContents TEXT NOT NULL,
      -> tTime TIMESTAMP NOT NULL,
      -> tClickCount INT NOT NULL,
      -> tLastClickT TIMESTAMP NOT NULL);
    5. reply表

      列名数据类型允许NULL值说明
      rIDINT回复编号
      tIDINT回复帖子编号
      uIDINT回复用户编号
      rEmotionCHAR回复表情
      rTopicVARCHAR(20)回帖主题
      rContentsTEXT回帖内容
      rTimeTIMESTAMP回帖时间
      rClickCountINT回帖点击次数

    优化设计:

    1. 设计索引

    • topic表

      根据实际的使用场景,我们预想到:主贴的标题,发帖时间,还有主贴内容,可能被搜索的频率比较高。所以为了增加查找效率,我们给这三个属性添加索引。

      给tTopic创建名为index_topic_title的索引。

      CREATE INDEX index_topic_title ON topic(tTopic);

      给tTime创建名为index_topic_date的索引。

      CREATE INDEX index_topic_date ON topic(tTime);

      给contents创建名为index_new_contents的索引。ALTER INDEX... 是当数据库中的别的表有重复名称的熟悉的时候,可以指定表的名称。(实际上,我们一般都用ALTER而不是直接添加索引)

      ALTER TABLE topic ADD INDEX index_new_contents(tContents(20));

      这里有个小细节tContents本来没有长度限制,为什么要写成tContents(20)?

      因为TEXT类型没有限制长度,直接为TEXT类型的数据建立索引的话,会报出如下的错误:

      mysql> ALTER TABLE topic ADD INDEX index_new_contents (tContents);
      ERROR 1170 (42000): BLOB/TEXT column 'tContents' used in key specification without a key length

      原因是:

      MySQL不允许在BLOB/TEXT,TINYBLOB, MEDIUMBLOB, LONGBLOB, TINYTEXT,  MEDIUMTEXT,  LONGTEXT,VARCHAR建索引,因为前面那些列类型都是可变长的,MySQL无法保证列的唯一性,只能在BLOB/TEXT前n个字节上建索引,这个n最大多长呢?经过测试:

      对于gbk(一个汉字占两个字节)编码的字段,只能前383个字符建索引;对于utf8(一个汉字占三个字节)编码的字段,只能前255个字符建索引;对于latin编码的字段,只能前767个字符建索引。

      我们写20只是随便写的。

      查看一下优化后的topic表:

      mysql> show create table topic \G
      *************************** 1. row ***************************
      Table: topic
      Create Table: CREATE TABLE `topic` (
      `tID` int NOT NULL,
      `tSID` int NOT NULL,
      `tuid` int NOT NULL,
      `tReplyCount` int NOT NULL,
      `tEmotion` varchar(20) NOT NULL,
      `tTopic` varchar(20) NOT NULL,
      `tContents` text NOT NULL,
      `tTime` timestamp NOT NULL,
      `tClickCount` int NOT NULL,
      `tLastClickT` timestamp NOT NULL,
      PRIMARY KEY (`tID`),
      UNIQUE KEY `tID` (`tID`),
      KEY `index_new_contents` (`tContents`(20))
      ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
      1 row in set (0.00 sec)

      mysql> DESC topic;
      +-------------+-------------+------+-----+---------+-------+
      | Field | Type | Null | Key | Default | Extra |
      +-------------+-------------+------+-----+---------+-------+
      | tID | int | NO | PRI | NULL | |
      | tSID | int | NO | | NULL | |
      | tuid | int | NO | | NULL | |
      | tReplyCount | int | NO | | NULL | |
      | tEmotion | varchar(20) | NO | | NULL | |
      | tTopic | varchar(20) | NO | | NULL | |
      | tContents | text | NO | MUL | NULL | |
      | tTime | timestamp | NO | | NULL | |
      | tClickCount | int | NO | | NULL | |
      | tLastClickT | timestamp | NO | | NULL | |
      +-------------+-------------+------+-----+---------+-------+
      10 rows in set (0.01 sec)
    • section表

      section表经常被查看的可能是sName,所以我们对sName建索引。

      CREATE INDEX index_section_name ON section (sName);
    • reply表

      我们给rTime,rTopic, tID建立索引。

      CREATE INDEX index_reply_rtime ON reply (rTime);
      CREATE INDEX index_reply_rtopic ON reply (rTopic);
      CREATE INDEX index_reply_rid ON reply (tID);

    设计视图

    当我们查section表时,我们一般希望得到的信息是主贴的标题和发布时间。

    但是直接查询的话,显示信息会显示板块编号和板块名称等信息,这样不太直观,所以我们为了查询方便,建立一个视图topic_view。

    这个视图显示板块的编号,板块的名称,同一板块下主贴的标题,主贴的内容和主贴的发布时间。代码如下:

    CREATE VIEW topic_view
    AS SELECT s.sID,s.sName,t.tTopic,t.tContents,t.tTime
    FROM selection s, topic t
    WHERE s.sID=t.sID

    设计触发器

    触发器由INSERT,UPDATE,DELETE等事件来触发某种特定的操作。满足触发器的触发条件时,数据库系统就会执行触发器中定义的程序语句。这样可以保证某些操作之间的一致性,有利于论坛系统的数据更新快速合理。

    • 设计INSERT触发器

      如果向section表插入记录,那么版块的主题数目要相应增加。我们为这个情景设计下面的触发器:

      注意:DELIMITER &&是吧结束符号从默认的;改成&&,这是因为我们的触发器内部的代码要用到;,在写完触发器后,在用DELIMITER ;把结束的符号改回;是一个好习惯。

      mysql> DELIMITER &&
      mysql> CREATE TRIGGER section_count AFTER INSERT
      -> ON section FOR EACH ROW
      -> BEGIN
      -> UPDATE section SET sTopicCount=sTopicCount+1
      -> WHERE sID=NEW.sID;
      -> END
      -> &&
      -> DELIMITER ;
    • 设计UPDATE触发器

      设计表时,user表和reply表的字段uID字段的值是一样的。如果user表的uID字段的值更新了,那么reply表中的uID字段的值也必须同时更新。我们为这个场景设计如下的触发器:

      mysql> DELIMITER &&
      mysql> CREATE TRIGGER update_userID AFTER UPDATE
      -> ON user FOR EACH ROW
      -> BEGIN
      -> UPDATE reply SET uID=NEW.uID;
      -> END
      -> &&
      -> DELIMITER ;
    • 设计DELETE触发器

      如果从user表删除一个用户信息,那么这个用户在topic表中的信息也必须同时删除。

      mysql> DELIMITER &&
      mysql> CREATE TRIGGER delete_user AFTER DELETE
      -> ON user FOR EACH ROW
      -> BEGIN
      -> DELETE FROM top WHERE uID=OLD.uID;
      -> END
      -> &&
      -> DELIMITER ;
    • 还没写的触发器:

      太多了,我实在不想写了,显然这个数据库还不是很完善。比如上面的INSERT触发器的例子,我们只写了主题增加的情况,没有写主题减少的情况,这就需要再设计一个DELETE触发器。

      类似的地方还有一些,希望你看完这里粗略的demo,可以掌握MySQL的优化。自己脑补一下需要的触发器。

      最后总结一下:

      数据库的优化,主要依靠索引,视图,和触发器。

      本例中,三者的作用分别是:加快查找速度,为用户程序的观察提供方便,保护数据之间的逻辑关系。

    展开全文
  • 大学教务数据库中有如下五张表: student (s_no, name, sex, b_date, phone, d_no); course (c_no, name, textbook, credit, hours, d_no); teacher (t_no, name, rank, email, phone, d_no); department(d_no, ...
  • jsp19116学院校历教务管理系统-SSH-Mysql该设计有演示视频 100%能运行买重包换 保密发送 一校一份编号:jsp19116语言+数据库:jsp+mysql论文字数:13774字 目 录摘 要 IAbstract II第1章 前 言 31.1课题背景 31.2...
  • 根据所学JAVA以及数据库知识,实现符合要求简单的学生信息管理系统一、在SQL server中建立表和视图(1)首先创建数据库--“教务系统”;(2)在SQL Server 2008中创建关系数据模型(即表结构),共设计6个表分别为...
  • 教务管理数据库创建

    千次阅读 2017-03-29 19:44:05
    '数据库原理 ' , N '1136 ' , 4 ) INSERT [dbo].[Course] ([Cno], [Cname], [Cpno], [Ccredit]) VALUES (N '1128 ' , N '高等数学 ' , NULL , 6 ) INSERT [dbo].[Course] ([Cno], [Cname], [Cpno], ...
  • 数据库-教务管理系统

    2014-01-03 02:01:29
    数据库作业,教务管理系统,sql加delphi7
  • 教务管理数据库设计

    2020-03-17 12:02:08
    Student { s_id int primary key, s_name nvarchar(10) not null, s_sex nchar(1) not null check(s_sex=’男’ or s_sex=’女’), s_class int not null, s_address nvarchar(50), s_credit int default(0), ...
  • 数据库课程设计-教务管理系统
  • 一、实验内容:实现停车场管理系统,应用于车辆的出、入管理。二、功能要求:包括车辆进出管理与系统管理等功能模块,可根据车辆停放时间及收费标准自动收费。用户需要事先办理停车卡并充值,停车卡分优惠卡和普通卡...
  • 数据库--教务系统

    2013-03-19 11:05:33
    教务系统E-R图 教务系统关系表 SQL Server创建表 Student、Course 表-主键 转载于:https://blog.51cto.com/dyzyxy/1157942
  • 数据库教务管理系统课程设计报告,里面包含了设计要求,需求分析,数据库设计,系统结构等描述
  • 数据库设计实例-教务管理系统

    万次阅读 2013-11-08 08:50:59
    数据库设计实例教务管理系统 数据库实验七 数据库设计 ... 假设此次设计的教务系统是整个学生管理系统数据库中的一部分,整个系统至少还包括学籍管理等其他子系统。 在初期设计时,先关注与教务系统有关的
  • 数据库教务管理系统

    万次阅读 多人点赞 2019-10-22 16:09:55
    系统的用户有三个不同的角色,分别是教务教师,管理人员,学生,角色不同,需求不同。通过分析,各用户的需求如下: 1.2.1.1 教师用户需求 教师可以通过系统录入成绩,查看课表、培养计划、学期计划的教学信息。查询...
  • Java实现带界面的教务管理系统(结合数据库

    千次阅读 多人点赞 2020-07-09 12:31:52
    结课作业就是自己实现一个简单的系统或者算法,在网上找了一些资料,然后扩展了一下,最终做出来了一个最简单的教务管理系统。适合新手练手用,所以打算写下来可以对一些人有帮助。其中主要就是用到了Java中的swing...
  • 2. 学生管理界面:查询和修改学生的个人信息和密码,查询课程库所有课程信息,查询自己的个人成绩,查看...4. 管理员管理界面:查询和修改数据库中的任意表,如学生信息表,老师信息表,选课表,课程表,教学任务表等
  • 数据库设计实例 教务管理系统

    万次阅读 多人点赞 2006-12-25 22:00:00
    数据库实验七 数据库设计 题目要求... 假设此次设计的教务系统是整个学生管理系统数据库中的一部分,整个系统至少还包括学籍管理等其他子系统。在初期设计时,先关注与教务系统有关的数据。在完成对教务管理系统的建
  • 一个学校有很多个学院组成,每个学院有多个专业,每个专业有一个或者多个班级。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,989
精华内容 1,195
关键字:

创建教务系统数据库