SQL server建立学生库(大学生入门---交互式和命令式)

学生课程数据库

一、建库

create database xs

1.选择数据库右击,选择"新建数据库"

  1. 输入数据库名(版本不一样界面也不一样),大小默认,随后点击确定

二、建表

(1)学生信息表

create table student

(sno int primary key,

sname varchar(50),

ssex varchar(10) check(ssex='男' or ssex='女'),

sage int check(sage>17),

sdept varchar(10))

1.选择新建的数据库"xs"右击选着"新建表"

2.按照给定的列输入列名和数据类型

3.选择sno列右键添加主键

  1. 选择ssex列添加约束如图

5.选择sage列添加约束如图

6.保存命名

(2)建立course表

create table course

(cno int unique,

cname varchar(50),

cpno int foreign key references course(cno),

ccredit int)

  1. 按照上述方式建表,列名和数据类型如下(注意一点要√允许为空,本表不设主键)

2.选择第一列添加索引,改为"唯一值"

  1. 为cpno列添加外键
  1. 保存命名

(3)创建sc表

create table sc

(sno int foreign key references student(sno),

cno int foreign key references course(cno),

grade int check(grade>=0 and grade<=100))

1.按照上述过程建表,列名和数据类型如下图

  1. 选择sno列右键选择"关系"建立外键关系

  1. 选择cno列右键选择"关系"添加外键关系
  1. 选择grade列右键选择"check约束",按图所示添加约束

三、向表中添加数据

(1)

insert into student

values

(201215121,'李勇','男',20,'CS'),

(201215122,'刘晨','女',19,'CS'),

(201215124,'王敏','女',18,'MA'),

(201215125,'张立','男',19,'IS')

(2)course表中有参照完整性约束所以不能直接按顺序输入数据,需要将参照值为null的数据线录入

insert into course

values

(2,'数学',null,2),

(6,'数据处理',null,2),

(4,'操作系统',6,3),

(7,'PASCL语言',6,4),

(5,'数据结构',7,4),

(1,'数据库',5,4),

(3,'操作系统',1,4)

(3)

insert into sc

values

(201215121,1,92),

(201215121,2,85),

(201215121,3,88),

(201215122,2,90),

(201215121,3,80)

相关推荐
.柒宇.7 小时前
Redis高频面试题与跳跃表原理详解
数据库·redis·缓存
Bryce学亮8 小时前
股票数据成本分析工具
数据库
思麟呀8 小时前
MySQL表的约束
数据库·mysql
步十人8 小时前
【FastAPI】ORM-02.使用 ORM 高效处理数据库逻辑
服务器·数据库·fastapi
Apache IoTDB8 小时前
时序数据库 IoTDB + 时序智能服务平台 TimechoAI 亮相中国核电信息技术高峰论坛
数据库·时序数据库·iotdb
未若君雅裁8 小时前
Redis 和 MySQL 双写一致性:延迟双删、读写锁、MQ、Canal 怎么选?
数据库·redis·面试
罗超驿9 小时前
9.深度剖析MySQL约束的工程设计:自增主键的分布式局限、外键约束的权衡,与CHECK的版本适配实践
数据库·mysql
Kiyra9 小时前
Agent 的记忆不是存数据库就行:上下文预算与轻量记忆的设计实战
数据库·人工智能·后端·面试·职场和发展·哈希算法
jiayong239 小时前
MySQL 8.0 数据库恢复问题完整解决方案
数据库·mysql
czlczl200209259 小时前
普通索引和唯一索引 查询性能差异
数据库