数据库实验

2022/4/22 19:14:12

本文主要是介绍数据库实验,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

实验一

  1. 创建studentdb数据库,创建spjdb数据库

  2. 在studentdb中创建三个表student,course ,sc

  3. 在spjdb中创建四个表S,P,J,SPJ

  4. 在studentdb中创建架构Production和Person并比较区别

  5. 修改表结构

    (1) 将表course的cname列的数据类型改为varchar(40).
    (2) 为表student增加一个新列: birthday(出生日期), 类型为datetime, 默认为空值.
    (3) 将表sc中的grade列的取值范围改为小于等于150的正数.
    (4) 为Student表的“Ssex”字段创建一个缺省约束,缺省值为’男’
    (5)为“Sdept”字段创建一个检查约束,使得所在系必须是’CS’、’MA’或’IS’之一。
    (6)为Student表的“Sname”字段增加一个唯一性约束
    (7)为SC表建立外键,依赖于Student表的fk_S_c约束。
    (8)禁止启用Student表的“Sdept”的CHECK约束ck_student。

  6. 建立索引

    (1) 在student表的sname列上建立普通降序索引.
    (2) 在course表的cname列上建立唯一索引.
    (3) 在sc表的sno列上建立聚集索引.
    (4) 在spj表的sno(升序), pno(升序)和jno(降序)三列上建立一个普通索引.

#创建数据库
CREATE DATABASE studentdb
CREATE DATABASE spjdb
/*在studentdb中创建三个表*/
CREATE TABLE student2020205224
(
    sno CHAR(9) PRIMARY KEY,
    sname CHAR(10) NOT NULL,
    ssex CHAR(2) ,
    sage SMALLINT,
    sdept char(15),
    CHECK (sage>=12),
)
CREATE TABLE course2020205224
(
    cno CHAR(4) PRIMARY KEY,
    cname CHAR(20) NOT NULL,
    cpon CHAR(4) NOT NULL,
    ccredit SMALLINT,
)
CREATE TABLE sc2020205224
(
    sno CHAR(9),
    cnp CHAR(20) PRIMARY KEY,
    grade DECIMAL(5) NOT NULL,
    CHECK(grade>=0 and grade<=100)
)
/*在spjdb中创建三个表*/
CREATE TABLE S2020205224
(
    sno CHAR(2) PRIMARY KEY,
    sname CHAR(10),
    statu SMALLINT,
    city CHAR(10) NOT NULL,
    CHECK(statu>0),
)
CREATE TABLE P2020205224
(
    pno CHAR(2) PRIMARY KEY,
    pname CHAR(10) NOT NULL ,
    color CHAR(2),
    pweight SMALLINT,
    CHECK (pweight>0),
)
CREATE TABLE J2020205224
(
    jno CHAR(2) PRIMARY KEY,
    jname CHAR(10) NOT NULL,
    jcity CHAR(10),
)
CREATE TABLE SPJ2020205224
(
    son CHAR(2),
    pon CHAR(10),
    jno CHAR(10) PRIMARY KEY,
    qty SMALLINT,
    CHECK (qty>0),
)


这篇关于数据库实验的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程