第一章 创建数据库和表

创建数据库和表

案例表含义介绍

  1. 学生Student

    Student(Sno char(8), Sname char(10), Ssex char(2), Sage integer, Dno char(2), Sclass char(6))
    # 学生(学号, 姓名, 性别, 年龄, 所属系别, 班级)	
    
  2. 院系Dept

    Dept(Dno char(2), Dname char(10), Dean char(10))
    # 院系(系别, 系名, 系主任)
    
  3. 课程Course

    Course(Cno char(3), Cname char(12), Chours integer, Credit float(1), Tno char(3))
    # 课程(课程号, 课名, 学时, 学分, 教师编号)
    
  4. 教师Teacher

    Teacher(Tno char(3), Tname char(10), Dno char(2), Salary float(2))
    # 教师(教师编号, 教师名, 所属院系, 工资)
    
  5. 选课SC

    SC(Sno char(8), Cno char(3), Score float(1))
    # 选课(学号, 课程号, 成绩)
    

语法介绍

符号含义
[]括号内的内容可以省略, 可选
|二者选其一,
%匹配0个或多个字符, 通配符
_匹配1个字符
\转义字符
[not] like字符串模糊匹配
Primary key主键, 一张表中只能有一个主键
Unique候选键, 可以不唯一
Not null非空约束
char(n)固定长度为n的字符串
varchar(n)可变长字符串
int整数
numeric(p, q)固定精度数字, 小数点前p位, 小数点后p-q位
real/float(n)浮点精度数字
date日期(2022-1-21)
time时间(20:27:56)

创建数据库和表

create database sct;
#创建数据库sct
#drop database sct;#删除数据库sct

create table Student
(#创建Student表
    Sno    varchar(8) primary key not null,
    Sname  varchar(10),
    Ssex   varchar(2),
    Sage   integer,
    Dno    varchar(2),
    Sclass varchar(6)
);

create table Dept
(#创建Dept表
    Dno   varchar(2),
    Dname varchar(10),
    Dean  varchar(10)
);

create table Course
(#创建课程表
    Cno    varchar(3),
    Cname  varchar(12),
    Chours integer,
    Credit float(1),
    Tno    varchar(3)
);

create table Teacher
(#创建按教师表
    Tno    varchar(3),
    Tname  varchar(10),
    Dno    varchar(2),
    Salary float(2)
);

create table SC
(#创建选课表
    Sno   varchar(8),
    Cno   varchar(3),
    Score float(1)
);

修正数据库的定义

语法: alter table <表名>

#增加新列
#在学生表的基础上新增两列
alter table student
    ADD Saddr varchar(40),
    ADD PID   varchar(18);

#将学生表中Sname列的数据类型增加两个字符
alter table student
modify Sname varchar(10);

#删除学生姓名必须取唯一值的约束(MySQL中报错)
alter table  student
drop unique(Sname);

#撤销基本表(不仅删除表中数据, 还把表d)
drop table st;

语法小结

类别用途语法
创建创建数据库create database <数据库名>;
创建表create table <表名>;
插入单个元组插入insert into <表名> values <值>;
批元组插入insert into <表名> <子查询>;
修改定义增加新列add {<列名>, <类型>}
删除完整性约束drop{<完整性约束名>}
修改列定义modify{<列名>, <类型>}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值