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)

相关推荐
白帽攻防录3 小时前
SRC 挖洞:Roundcube 预认证 SQL 注入深度复盘,CVE-2026-48842 preg_replace 转义绕过怎么打穿邮件系统
网络·数据库·sql·网络安全·sql注入
꯭自꯭闭꯭3 小时前
达梦SQL优化相关
linux·运维·数据库·sql
对空六课4 小时前
支持注意力分析的热力图工具有哪些?
前端·数据库·数据分析
南京码讯光电技术有限公司4 小时前
How to Design an Antenna System for an Industrial WiFi Module
数据库·人工智能
lusklusklusk5 小时前
Oracle数据库基础之2_体系结构
数据库·oracle
可乐ea5 小时前
从第一性原理构建 AI Agent:提示词、工具、技能与记忆全解剖
数据库·人工智能·工具调用·ai智能体·提示词工程·agent开发·智能体记忆
东方护航数据恢复(深圳)6 小时前
医疗案例:HIS/PACS 数据库页损坏修复,医院不停诊完成恢复【东方护航数据恢复深圳店】
数据库·数据恢复·医疗·二次开盘
lusklusklusk7 小时前
Oracle数据库基础之11_Duplicate和Dataguard和RAC
数据库·oracle
PHP实战开发录8 小时前
MySQL字段加索引为什么没变快
数据库·mysql·php·开发
红红谈说9 小时前
标签化推送与已读统计怎么做?一次通知链路的工程复盘
数据库·消息推送·数字乡村·集合运算·已读回执·标签体系·写入放大