创建数据库school,这个数据库中包含四个表:分别是学生表、教师表、课程表和成绩表。

语法:
create database school;(创建数据库school)

show databases;(查看是否已经创建好)

drop database school;(删除数据库school,这里不必删除)

2.设计创建学生表、教师表、课程表和成绩表。

语法:
use school;

create table student(

sno varchar(20) not null,

sname varchar(20) not null,

ssex varchar(20) not null default’男’,

sbirthday datetime,

sclass varchar(20));

语法:
use school;

create table teacher(

tno varchar(20) not null,

tname varchar(20) not null,

tsex varchar(20) not null default’男’,

tbirthday datetime,

prof varchar(20) not null,

depart varchar(20));

语法:
use school;

create table course(

cno varchar(20) not null,

cname varchar(20) not null,

tno varchar(20) not null);

语法:
use school;

create table score(

sno varchar(20) not null,

cno varchar(20) not null,

degree decimal(4,1) not null);

显示所有表是否已经创建,可用以下语句:

Show tables from school;

3.添加主键和外键约束

语法:
对学生表添加主键约束:

alter table student

add constraint primary key(sno);

对成绩表添加外键约束:

alter table student

add constraint foreign key(sno)

references student(sno);

alter table student

add constraint foreign key(cno)

references course(cno);

对成绩表添加主键约束:

Alter table student

Add constraint primary key(sno,cno);

用语法将以上的主键和外键都添加约束:

alter table student

add constraint primary key(sno);

alter table teacher

add constraint primary key(tno);

alter table course

add constraint primary key(cno);

alter table course

add constraint foreign key(tno)

references teacher(tno);

alter table score

add constraint primary key(sno,cno);

alter table score

add constraint foreign key(cno)

references course(cno);

4.将以下学生信息插入到学生表中:

语法:
insert into student(sno,sname,ssex,sbirthday,sclass)

values(108,‘曾华’,‘男’,‘1997-09-01’,95033);

insert into student(sno,sname,ssex,sbirthday,sclass)

values(105,‘匡明’,‘男’,‘1975-10-02’,95031);

insert into student(sno,sname,ssex,sbirthday,sclass)

values(107,‘王丽’,‘女’,‘1976-01-23’,95033);

insert into student(sno,sname,ssex,sbirthday,sclass)

values(101,‘李军’,‘男’,‘1976-02-20’,95033);

insert into student(sno,sname,ssex,sbirthday,sclass)

values(109,‘王芳’,‘女’,‘1975-02-10’,95031);

insert into student(sno,sname,ssex,sbirthday,sclass)

values(103,‘陆君’,‘男’,‘1974-06-03’,95031);

select*from student;(查看是否所有信息都插入表中了)

结果如下:

5.将以下信息插入到教师表中:

语法:
insert into teacher(tno,tname,tsex,tbirthday,prof,depart)

values(804,‘李诚’,‘男’,‘1958-12-02’,‘副教授’,‘计算机系’);

insert into teacher(tno,tname,tsex,tbirthday,prof,depart)

values(856,‘张旭’,‘男’,‘1969-03-12’,‘讲师’,‘电子工程系’);

insert into teacher(tno,tname,tsex,tbirthday,prof,depart)

values(825,‘王萍’,‘女’,‘1972-05-05’,‘助教’,‘计算机系’);

insert into teacher(tno,tname,tsex,tbirthday,prof,depart)

values(831,‘刘冰’,‘女’,‘1977-08-14’,‘助教’,‘电子工程系’);

6.以下信息输入课程表表中

语法:
insert into course(cno,cname,tno)

values(‘3-105’,‘计算机导论’,825);

insert into course(cno,cname,tno)

values(‘3-245’,‘操作系统’,804);

insert into course(cno,cname,tno)

values(‘6-166’,‘数据电路’,856);

insert into course(cno,cname,tno)

values(‘19-888’,‘高等数学’,831);

7.将以下信息输入成绩表中:

语法:
insert into score(sno,cno,degree)

values(103,‘3-245’,86);

insert into score(sno,cno,degree)

values(105,‘3-245’,75);

insert into score(sno,cno,degree)

values(109,‘3-245’,68);

insert into score(sno,cno,degree)

values(103,‘3-105’,92);

insert into score(sno,cno,degree)

values(105,‘3-105’,88);

insert into score(sno,cno,degree)

values(109,‘3-105’,76);

insert into score(sno,cno,degree)

values(101,‘3-105’,64);

insert into score(sno,cno,degree)

values(107,‘3-105’,91);

insert into score(sno,cno,degree)

values(108,‘3-105’,78);

insert into score(sno,cno,degree)

values(101,‘6-166’,85);

insert into score(sno,cno,degree)

values(107,‘6-166’,79);

insert into score(sno,cno,degree)

values(108,‘6-166’,81);

8.要求查询学生表中的sname、ssex和sclass列。

语法:
select sname,ssex,sclass

from student;

9.查询学生表中的所有记录。

语法:

Select*from student;

结果如下:

10.查询教师表中不同的系名,以及每个系有多少老师。(重点)

分析:

按系名分组(group by)
求每组有多少老师,即每组有几行?(count)
语法:
Select depart,count(*)

From teacher

Group by depart

11.查询成绩表中分数在60分到80分之间的所有记录

分析:

查询成绩表中的某些记录
这些记录一定满足60分到80分
语法:
Select*from score

Where degree between 60 and 80;

12.查询成绩表中分数为85,86或88的记录。

分析:

查询成绩表中的某些记录
这些记录应满足成绩为85,86或88
这里用where子句:

方法a:使用关键字in

方法b:使用关键字or

语法a:
Select*from score

Where degree in(85,86,88);

语法b:
Select*from score

Where degree =85 or degree =86 or degree =88;

注:这里的or表示并且,不能用and(and表示交集)

13.查询学生表中“95031”班或性别为“女”的记录。

分析:

查询某些同学的记录
where子句筛选符合条件的行
语法a:
select*from student

where sclass=‘95031’ or ssex=‘女’;

语法b:
查询95031这个班级的所有同学的记录
查询性别为女的所有记录
用关键字union连接以上的查询语句。
select*from student where sclass=‘95031’

union

select*from student where ssex=‘女’;

14.查询所有不姓王的同学记录。

SQL语句:
select*from student

where sname not like ‘王%’;

15.以class降序来查询所有学生记录。

分析:

查询所有学生记录
用order by子句对查询结果进行降序排序
SQL语句:
select*from student

Order by sclass desc;

用SQL创建学生成绩数据库相关推荐

  1. 用mysql创建学生成绩表_用SQL创建学生成绩数据库

    创建数据库school,这个数据库中包含四个表:分别是学生表.教师表.课程表和成绩表. 语法: create database school;(创建数据库school) show databases; ...

  2. 创建学生成绩数据库的简单sql语句

    //创建数据库 create database JW; //学生表 create table student(sno varchar(20) not null,sname varchar(20) no ...

  3. 猿创征文|使用SQL创建学生信息管理数据库(完整)

    一.数据库及主要数据文件和日志文件创建代码 create database STU_Information on (name=STU_Information, --数据文件逻辑名称filename=' ...

  4. 基于C#结合SQL设计学生成绩系统系统

    基于C#结合SQL设计学生成绩系统系统 错误集合 以下为C#部分 呈现效果 C#代码 这是数据库大作业,原本想的是用python和SQL,但遇到了很多错误,相对C#也很麻烦,因此换了C#.但还是先记录 ...

  5. c语言实现创建学生成绩表,实现插入、删除和统计等管理功能。

    c语言实现创建学生成绩表,实现插入.删除和统计等管理功能. #include <stdio.h> #include <stdlib.h> #include <malloc ...

  6. 用mysql创建 学生选课 数据库_学生选课系统数据库SQL语句考试题

    --1. 查询Student表中的所有记录的Sname.Ssex和Class列. SELECT sname,Ssex,class from Student --2. 查询教师所有的单位即不重复的Dep ...

  7. 用C语言学生成绩数据库排序功能设计,[c语言学生成绩管理系统]C语言学生成绩管理系统实验报告...

    篇一 : C语言学生成绩管理系统实验报告 实 验 四:结构体(6学时) 实验目的: 1.更加灵活的使用数组作为函数参数: 2.初步掌握开发一个小型实用系统的基本方法: 3.初步掌握书写程序设计开发文档 ...

  8. 创建学生信息管理数据库

    本文是由YuDrag独家创作的--------作业 如有错误之处,还请各位大佬指正,小弟课下之余将认真修改.感谢各位!!! 下次作业再见!!! 学生信息管理数据库:面对学生和教师信息进行存储和进行相关 ...

  9. Sql 查询学生成绩表中每个科目的最高分及对应科目和学生

    一道面试题,现场没写正确(默哀),回来记录一下 学生成绩表 : CREATE TABLE `tabscore` (   `id` int(11) NOT NULL AUTO_INCREMENT,   ...

最新文章

  1. 【THML】兴唐第二十八节课 几个小程序
  2. 自动红眼移除算法 附c++完整代码
  3. html输入邮箱的文本框,自动生成邮箱号并填入input输入框的实现方法
  4. wxWidgets:wxSpinButton类用法
  5. 利用 Sql 实现数据透视表功能
  6. java反射 获取方法_java反射之获取类的信息方法(推荐)
  7. LeetCode 166. 分数到小数(小数除法)
  8. RabbbitMq 消费端自定义监听
  9. wg运行内存装MySQL8_windows-安装mysql8的坑
  10. fastjson字符串json转对象(父类转子类)
  11. 读书笔记——5建造者模式(转)
  12. Vivado中异步FIFO IP核的使用与思考
  13. WPF 设置TextBox和PasswordBox设置光标位置
  14. 图片jpg格式怎么转换
  15. 从0开始使用腾讯云GPU服务器
  16. axios请求文件流下载文件
  17. 【智能金融】黑科技让银行们“长牙齿”,是该让马云颤抖了!
  18. SSD算法详解 及其 keras实现 (下)
  19. 普渡大学统计与计算机科学,普渡大学西拉法叶校区计算机科学与工程世界排名2017年最新排名第47(ARWU世界排名)...
  20. Android O(SDK 8.0)新特性,刘海屏

热门文章

  1. Word公式编辑器快速上手指南
  2. 苹果手机备份占内存吗 苹果手机备份到电脑怎么操作
  3. 元境亮相进博会 携手Unity共同赋能开发者云端创作力
  4. Seq2Seq模型中的label bias和exposure bias问题
  5. **[UE4技巧]** Blender 和 UE4 的建模动画无缝对接(上) — 再也不用满大街找资源啦!
  6. 记录:macbook可以连wifi但是上不了网
  7. 关于前端安全性那些事
  8. JavaScript构造函数的重载
  9. 推荐一本Vue源码阅读书籍《Vue.js技术内.幕》
  10. 【智能口罩】基于“RTL8762CK/CKF 蓝牙口罩 ”的设计