精华内容
下载资源
问答
  • 学生选课数据库SQL语句练习题

    千次阅读 2021-02-12 09:09:51
    一、设有一数据库,包括四个表:学生表(Student)、课程表(Course)、成绩表(Score)以及教师信息表(Teacher)。四个表的结构分别如表1-1的表(一)~表(四)所示,数据如表1-2的表(一)~表(四)所示。用SQL语句创建四个表并...

    一、设有一数据库,包括四个表:学生表(Student)、课程表(Course)、成绩表

    (Score)以及教师信息表(Teacher)。四个表的结构分别如表1-1的表(一)~表(四)所示,数据如表1-2的表(一)~表(四)所示。用SQL语句创建四个表并完成相关题目。

    表1-1数据库的表结构

    表(一)Student

    属性名数据类型可否为空含义

    Sno Char(3) 否学号(主码)

    Sname Char(8) 否学生姓名

    Ssex Char(2) 否学生性别

    Sbirthday datetime 可学生出生年月

    Class Char(5) 可学生所在班级

    表(二)Course

    属性名数据类型可否为空含义

    Cno Char(5) 否课程号(主码)

    Cname Varchar(10) 否课程名称

    Tno Char(3) 否教工编号(外码)

    表(三)Score

    属性名数据类型可否为空含义

    Sno Char(3) 否学号(外码)

    Cno Char(5) 否课程号(外码)

    Degree Decimal(4,1) 可成绩

    主码:Sno+ Cno

    表(四)Teacher

    属性名数据类型可否为空含义

    Tno Char(3) 否教工编号(主码)

    Tname Char(4) 否教工姓名

    Tsex Char(2) 否教工性别

    Tbirthday datetime 可教工出生年月

    Prof Char(6) 可职称

    Depart Varchar(10) 否教工所在部门

    表1-2数据库中的数据

    表(一)Student

    Sno Sname Ssex Sbirthday class

    展开全文
  • 数据库原理课程设计,包含设计的源代码以及报告,其中有数据库设计的ER图,还有源代码的运行环境是Java,项目是学生选课管理系统,可以供大家学习数据库原理课程设计。
  • 学生选课数据库分析(Hadoop实验)

    千次阅读 多人点赞 2020-12-18 22:58:57
    本次实验我们假设了一个实际场景:假设现在有一个省份的学生选课数据需要你去分析,那么在数据集复杂和庞大的面前,我们的Hadoop是否还实用,这里所说的数据集复杂是因为有多个数据表需要你去采集,分析也需要进行多...

    计算机二级全套资源,点击下载,必过考试的神器!!!!

    前面我们介绍了Hadoop环境下,分析淘宝大数据案例的过程及方法,根据分析效果还不错,实验效果也体现了大数据的数据集大的一个特点。本次实验我们假设了一个实际场景:假设现在有一个省份的学生选课数据需要你去分析,那么在数据集复杂和庞大的面前,我们的Hadoop是否还实用,这里所说的数据集复杂是因为有多个数据表需要你去采集,分析也需要进行多表连接。

    在这里插入图片描述对Hadoop里面的hive的认识,我觉得没有MySQL智能和方便,那么为什么我们还要去使用Hadoop里面的hive呢,因为大数据集,后面我们会引入spark这个引擎,会极大地方便我们开始新的旅途!

    项目简介

    假设一个数据集十分庞大的学生选课数据集,当然我们这里只是模拟了一个数据集,便于我们使用,我们在Python环境下面产生一些虚拟数据集,有四个表分别是学生表,选课表,课程表,课程_班级表,当然现实生活中真的需要你去分析,那么也至少是千万级的数据集。

    分析数据:
    a、男女生比例
    b、及格率
    c、每门课程的平均分,要求显示出课程的中文名字
    d、有2门课不及格的学生
    e、在mysql中创建结果表,把结果用sqoop写入到表中,并显示结果。

    在这里插入图片描述思路其实之前类似:
    在这里插入图片描述
    一些基本的操作和配置在之前的淘宝案例里面我们都有介绍,这里我就不做过多的赘述了,有需要的小伙伴请移步到上一篇文章

    需要注意的是,之前我们发现导入导出进行查询的时候,显示中文是???本次我们修改了一些数据参数,现在可以显示正常了操作步骤如下:

    在useSSL=false后面添加下面参数即可:

    &allowPublicKeyRetrieval=true&useUnicode=true&characterEncoding=UTF-8
    

    考虑到有的人容易打错,所以只需要将下面的代码全选覆盖之前的也可以

    <?xml version="1.0" encoding="UTF-8" standalone="no"?>
    <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
    <configuration>
    <property>
       <name>javax.jdo.option.ConnectionURL</name>
       <value>jdbc:mysql://localhost:3306/hive?useSSL=false&amp;allowPublicKeyRetrieval=true&amp;useUnicode=true&amp;characterEncoding=UTF-8</value>
    </property>
    <property>
       <name>javax.jdo.option.ConnectionDriverName</name>
       <value>com.mysql.jdbc.Driver</value>
    </property>
    
    <property>
       <name>javax.jdo.option.ConnectionUserName</name>
       <value>root</value>
    </property>
    
    <property>
       <name>javax.jdo.option.ConnectionPassword</name>
       <value>root</value>
    </property>
    
    <property>
        <name>hive.support.concurrency</name>
        <value>true</value>
    </property>
    <property>
        <name>hive.exec.dynamic.partition.mode</name>
        <value>nonstrict</value>
    </property>
    <property>
        <name>hive.txn.manager</name>
        <value>org.apache.hadoop.hive.ql.lockmgr.DbTxnManager</value>
    </property>
    <property>
        <name>hive.compactor.initiator.on</name>
        <value>true</value>
    </property>
    <property>
        <name>hive.compactor.worker.threads</name>
        <value>1</value>
        <!--这里的线程数必须大于0 :理想状态和分桶数一致-->
    </property>
    <property>
        <name>hive.enforce.bucketing</name>
        <value>true</value>
    </property>
    
    </configuration>
    

    创建文件夹,便于后续操作(和之前的一样)

    mkdir -p /home/hadoop/xsxk/data
    mkdir -p /home/hadoop/xsxk/tmp/point
    

    创建四个配置文件,帮助我们导入到hive里面(flume组件配置)

    vi tb_course.properties
    
    #定义agent名, source、channel、sink的名称
    agent3.sources = source3
    agent3.channels = channel3
    agent3.sinks = sink3
    #具体定义source
    agent3.sources.source3.type = spooldir
    agent3.sources.source3.spoolDir = /home/hadoop/xsxk/data
    agent3.sources.source3.fileHeader=false
    
    
    #设置channel类型为磁盘
    agent3.channels.channel3.type = file
    #file channle checkpoint文件的路径
    agent3.channels.channel3.checkpointDir=/home/hadoop/xsxk/tmp/point
    # file channel data文件的路径
    agent3.channels.channel3.dataDirs=/home/hadoop/xsxk/tmp
    
    #具体定义sink
    agent3.sinks.sink3.type = hive
    agent3.sinks.sink3.hive.metastore = thrift://hadoop:9083
    agent3.sinks.sink3.hive.database = xsxk
    agent3.sinks.sink3.hive.table = tb_course
    agent3.sinks.sink3.serializer = DELIMITED
    agent3.sinks.sink3.serializer.delimiter = ","
    agent3.sinks.sink3.serializer.serdeSeparator = ','
    agent3.sinks.sink3.serializer.fieldnames = code,name,period,credit
    agent3.sinks.sink3.batchSize = 90
    
    #组装source、channel、sink
    agent3.sources.source3.channels = channel3
    agent3.sinks.sink3.channel = channel3
    
    vi tb_course_class.properties
    
    #定义agent名, source、channel、sink的名称
    agent3.sources = source3
    agent3.channels = channel3
    agent3.sinks = sink3
    #具体定义source
    agent3.sources.source3.type = spooldir
    agent3.sources.source3.spoolDir = /home/hadoop/xsxk/data
    agent3.sources.source3.fileHeader=false
    
    
    #设置channel类型为磁盘
    agent3.channels.channel3.type = file
    #file channle checkpoint文件的路径
    agent3.channels.channel3.checkpointDir=/home/hadoop/xsxk/tmp/point
    # file channel data文件的路径
    agent3.channels.channel3.dataDirs=/home/hadoop/xsxk/tmp
    
    #具体定义sink
    agent3.sinks.sink3.type = hive
    agent3.sinks.sink3.hive.metastore = thrift://hadoop:9083
    agent3.sinks.sink3.hive.database = xsxk
    agent3.sinks.sink3.hive.table = tb_course_class
    agent3.sinks.sink3.serializer = DELIMITED
    agent3.sinks.sink3.serializer.delimiter = ","
    agent3.sinks.sink3.serializer.serdeSeparator = ','
    agent3.sinks.sink3.serializer.fieldnames = code,semester,teacher_id,course_code
    agent3.sinks.sink3.batchSize = 90
    
    #组装source、channel、sink
    agent3.sources.source3.channels = channel3
    agent3.sinks.sink3.channel = channel3
    
    vi tb_electives.properties
    
    #定义agent名, source、channel、sink的名称
    agent3.sources = source3
    agent3.channels = channel3
    agent3.sinks = sink3
    #具体定义source
    agent3.sources.source3.type = spooldir
    agent3.sources.source3.spoolDir = /home/hadoop/xsxk/data
    agent3.sources.source3.fileHeader=false
    
    
    #设置channel类型为磁盘
    agent3.channels.channel3.type = file
    #file channle checkpoint文件的路径
    agent3.channels.channel3.checkpointDir=/home/hadoop/xsxk/tmp/point
    # file channel data文件的路径
    agent3.channels.channel3.dataDirs=/home/hadoop/xsxk/tmp
    
    #具体定义sink
    agent3.sinks.sink3.type = hive
    agent3.sinks.sink3.hive.metastore = thrift://hadoop:9083
    agent3.sinks.sink3.hive.database = xsxk
    agent3.sinks.sink3.hive.table = tb_electives
    agent3.sinks.sink3.serializer = DELIMITED
    agent3.sinks.sink3.serializer.delimiter = ","
    agent3.sinks.sink3.serializer.serdeSeparator = ','
    agent3.sinks.sink3.serializer.fieldnames = course_class_code,student_id,score
    agent3.sinks.sink3.batchSize = 90
    
    #组装source、channel、sink
    agent3.sources.source3.channels = channel3
    agent3.sinks.sink3.channel = channel3
    
    vi tb_student.properties
    
    #定义agent名, source、channel、sink的名称
    agent3.sources = source3
    agent3.channels = channel3
    agent3.sinks = sink3
    #具体定义source
    agent3.sources.source3.type = spooldir
    agent3.sources.source3.spoolDir = /home/hadoop/xsxk/data
    agent3.sources.source3.fileHeader=false
    
    
    #设置channel类型为磁盘
    agent3.channels.channel3.type = file
    #file channle checkpoint文件的路径
    agent3.channels.channel3.checkpointDir=/home/hadoop/xsxk/tmp/point
    # file channel data文件的路径
    agent3.channels.channel3.dataDirs=/home/hadoop/xsxk/tmp
    
    #具体定义sink
    agent3.sinks.sink3.type = hive
    agent3.sinks.sink3.hive.metastore = thrift://hadoop:9083
    agent3.sinks.sink3.hive.database = xsxk
    agent3.sinks.sink3.hive.table = tb_student
    agent3.sinks.sink3.serializer = DELIMITED
    agent3.sinks.sink3.serializer.delimiter = ","
    agent3.sinks.sink3.serializer.serdeSeparator = ','
    agent3.sinks.sink3.serializer.fieldnames = id,name,gender,birthdate,phonenumber,major_class
    agent3.sinks.sink3.batchSize = 90
    
    #组装source、channel、sink
    agent3.sources.source3.channels = channel3
    agent3.sinks.sink3.channel = channel3
    

    在这里插入图片描述
    在这里插入图片描述

    注意在vi里面的操作,不知道的请移步上一篇文章。这样我们创建了四个文件,到时候我们只需要启动四个不同监听就可以同时都四个表的数据了

    在hive里面创建相应的四个表

    启动hive

    hive
    
    create database xsxk;
    
    use xsxk;
    
    create table `xsxk`.`tb_course`  (
      `code` varchar(255) ,
      `name` varchar(255) ,
      `period` varchar(255) ,
      `credit` varchar(255) 
    ) 
    clustered by(code) into 3 buckets
    row format delimited fields terminated by ','
    stored as orc tblproperties('transactional'='true');
    
    create table `xsxk`.`tb_course_class`  (
      `code` varchar(255) ,
      `semester` varchar(255) ,
      `teacher_id` varchar(255) ,
      `course_code` varchar(255) 
    ) 
    clustered by(code) into 3 buckets
    row format delimited fields terminated by ','
    stored as orc tblproperties('transactional'='true');
    
    create table `xsxk`.`tb_electives`  (
      `course_class_code` varchar(255) ,
      `student_id` varchar(255) ,
      `score` varchar(255)
    ) 
    clustered by(course_class_code) into 3 buckets
    row format delimited fields terminated by ','
    stored as orc tblproperties('transactional'='true');
    
    create table `xsxk`.`tb_student`  (
      `id` varchar(255) ,
      `name` varchar(255) ,
      `gender` varchar(255) ,
      `birthdate` varchar(255), 
      `phonenumber` varchar(255) , 
      `major_class` varchar(255)
    ) 
    clustered by(id) into 3 buckets
    row format delimited fields terminated by ','
    stored as orc tblproperties('transactional'='true');
    

    在这里插入图片描述
    hive里面创建结果表

    create table `xsxk`.`xsxk_result`  (
      `key` varchar(255) ,
      `value` varchar(255)) ;
    
    

    MySQL里面创建接收表

    CREATE DATABASE xsxk;
    
    create table `xsxk`.`xsxk_result`  (
      `key` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
      `value` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL
    ) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
    

    导入数据,准备四个flume导入监听代码

    首先运行该代码启动

    hive --service metastore -p 9083
    

    依次运行下面的代码,每次导入成功都需要,关闭依次终端(或者启动多个终端):

    flume-ng agent --conf conf --conf-file tb_course.properties -name agent3 -Dflume.hadoop.logger=INFO,console
    
    flume-ng agent --conf conf --conf-file tb_course_class.properties -name agent3 -Dflume.hadoop.logger=INFO,console
    
    flume-ng agent --conf conf --conf-file tb_electives.properties -name agent3 -Dflume.hadoop.logger=INFO,console
    
    flume-ng agent --conf conf --conf-file tb_student.properties -name agent3 -Dflume.hadoop.logger=INFO,console
    

    以上就把四个表格全部导入进去了,下面我们在hive里面查询一下这些东西是否真的成功了

    select count(*) from tb_course;
    select count(*) from tb_course_class;
    select count(*) from tb_electives;
    select count(*) from tb_student;
    
    

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    数据分析

    这一步是最重要的,我们之前在MySQL里面测试了的,所以我们直接把这些结果插入到我们的hive结果表里面
    注意每次查询的时候最好先执行这个代码,因为这个是hive的特性,在多表查询的时候需要进行等值连接

    set hive.mapred.mode=nonstrict;
    
    

    男女比例

    INSERT INTO xsxk_result
    (SELECT '男女比例',c.`男女比例` FROM
    (SELECT a.`男生人数`/b.`女生人数` as `男女比例` from (SELECT count(*) as `男生人数` from tb_student WHERE gender='男') as a,
    (SELECT count(*) as `女生人数` from tb_student WHERE gender='女') as b) as c);
    

    在这里插入图片描述
    男女结果近似1:1.说明模拟的数据还是比较合理,虽然男生高于女生数量,但是也不是特别的高。
    对于男女比例失调的当今社会,我只想说“你有多大的磁场就会有多大的引力,温水煮青蛙,只能坐井观天,你想要的只有自己才能给自己”

    及格率

    INSERT INTO xsxk_result
    (SELECT '及格率',c.`及格率` FROM
    (SELECT b.`及格人数`/a.`总数` as `及格率` FROM (SELECT count(*) as `总数` from tb_electives) as a,
    (SELECT count(*) as `及格人数` from tb_electives WHERE SCORE>='60') as b) as c);
    

    查询一下刚刚插入到结果表里面的信息:

    select * from xsxk_result;
    

    在这里插入图片描述
    每门课程的平均分,要求显示出课程的中文名字

    select q.`NAME`,ff.`课程平均分` from tb_course as q,
    (SELECT ee.`课程编号`,AVG(ee.`分数`) as `课程平均分` from 
    (SELECT cc.`COURSE_CODE` as `课程编号`,dd.`平均分` as `分数`from tb_course_class as cc,
    (select course_class_code as `班号`,AVG(SCORE)as `平均分` from tb_electives group by course_class_code order by `平均分` DESC) as dd WHERE
    cc.`CODE`=dd.`班号`) as ee GROUP BY ee.`课程编号`) as ff WHERE q.`CODE`=ff.`课程编号`
    
    INSERT INTO xsxk_result
    (SELECT c.`name` as `课程名称`,AVG(SCORE) as `平均分` from tb_course as c,tb_electives as e,tb_course_class as cc WHERE cc.`CODE`=e.COURSE_CLASS_CODE and cc.COURSE_CODE=c.`CODE` 
    GROUP BY c.`CODE` ORDER BY `平均分` DESC);
    

    在这里插入图片描述在这里插入图片描述

    有2门课不及格的学生

    
    INSERT INTO xsxk_result
    (
    SELECT s.`NAME` as `姓名` ,'挂科两门' from tb_student as s JOIN tb_electives as e 
    on s.ID=e.STUDENT_ID WHERE e.SCORE<60 GROUP BY s.`NAME` HAVING COUNT(s.`NAME`)=2
    );
    

    把结果导出到MySQL里面

    sqoop export --connect jdbc:mysql://localhost:3306/xsxk --username root -P --table xsxk_result --export-dir  /user/hive/warehouse/xsxk.db/xsxk_result  -m 1 --input-fields-terminated-by '\001'
    

    在这里插入图片描述
    在这里插入图片描述
    ???,为什么MySQL无法显示中文,这个问题如何解决呢?请把方法留言在评论区,欢迎交流!!
    学而不思则罔,思而不学则殆。我这里就不提出解决方法了,我们下期文章会解决该问题,介绍一些常见的工具和采坑解决方法!

    Hive操作——删除表(drop、truncate)

    Hive删除操作主要分为几大类:删除数据(保留表)、删除库表、删除分区。

    一、仅删除表中数据,保留表结构

    hive> truncate table 表名;

    truncate操作用于删除指定表中的所有行,相当于delete from table where 1=1.表达的是一个意思。

    注意:truncate 不能删除外部表!因为外部表里的数据并不是存放在Hive Meta store中。创建表的时候指定了EXTERNAL,外部表在删除分区后,hdfs中的数据还存在,不会被删除。因此要想删除外部表数据,可以把外部表转成内部表或者删除hdfs文件。

    二、删除表

    hive> drop table if exists 表名;

    drop table if exists table_name;

    三、删除库

    hive> drop database if exists 库名;

    注意如果库里有表会报错

    解决这个错误有两种方法:一、就是很简单的将所有表先删除完,再删除库。

    另外一种就是使用下述的方法:使用cascade关键字执行强制删库。

    drop database if exists 库名 cascade;

    四、删除hive分区

    alter table table_name drop partition (partition_name=‘分区名’)

    每文一语

    低级的欲望靠放纵 高级的欲望靠自律

    展开全文
  • 12、查询Score表中至少有5名学生选修的并以3开头的课程的平均分数。 select cno,avg(degree) from score where cno like "3%" group by cno having count(sno)>=5; 13、查询分数大于70,小于90的Sno列。 select sno...

    1、 查询Student表中的所有记录的Sname、Ssex和Class列。

    select Sname,Ssex,Class from Student;

    2、 查询教师所有的单位即不重复的Depart列。

    select distinct Depart from Teacher;

    3、 查询Student表的所有记录。

    select * from Student;

    4、 查询Score表中成绩在60到80之间的所有记录。

    select * from Score where degree>=60 and degree<=80;

    5、 查询Score表中成绩为85,86或88的记录。

    select * from score where degree=85 or degree=86 or degree=88;

    6、 查询Student表中“95031”班或性别为“女”的同学记录。

    select * from student where class="95031" or ssex="Ů";

    7、 以Class降序查询Student表的所有记录。

    select * from student order by class desc;

    8、 以Cno升序、Degree降序查询Score表的所有记录。

    select * from score order by cno,degree desc;

    9、 查询“95031”班的学生人数。

    select count(sno) from student where class="95031";

    10、 查询Score表中的最高分的学生学号和课程号。(子查询或者排序)

    select sno,cno from score where degree in (select max(degree)from score);                   //全部课程的最高分

    select sno,cno from score a where degree=(select max(degree) from score b where a.cno=b.cno);              //一门课的最高分

    11、 查询每门课的平均成绩。

    select cno,avg(degree) from score group by cno;

    12、查询Score表中至少有5名学生选修的并以3开头的课程的平均分数。

    select cno,avg(degree) from score where cno like "3%" group by cno having count(sno)>=5;

    13、查询分数大于70,小于90的Sno列。

    select sno from score where degree>70 and degree<90;

    14、查询所有学生的Sname、Cno和Degree列。

    select student.sname,score.cno,score.Degree from student,score where student.Sno=score.Sno;

    15、查询所有学生的Sno、Cname和Degree列。

    select score.Sno,course.Cname,score.Degree from course,score where course.cno=score.cno;

    16、查询所有学生的Sname、Cname和Degree列。

    select student.Sname,course.Cname,score.Degree from student,course,score where student.sno=score.sno and course.cno=score.cno;

    17、 查询“95033”班学生的平均分。

    select avg(degree) from score where sno in(select sno from student where class="95033");

    18、 假设使用如下命令建立了一个grade表:

    create table grade(low  int(3),upp  int(3),rank  char(1))

    insert into grade values(90,100,’A’)

    insert into grade values(80,89,’B’)

    insert into grade values(70,79,’C’)

    insert into grade values(60,69,’D’)

    insert into grade values(0,59,’E’)

    现查询所有同学的Sno、Cno和rank列。

    select score.Sno,score.Cno,grade.rank from score,grade where score.Degree>grade.low and score.degree

    19、  查询选修“3-105”课程的成绩高于“109”号同学成绩的所有同学的记录。

    select * from score where cno="3-105" and degree > (select degree from score where cno="3-105" and sno="109");

    20、查询score中选学多门课程的同学中分数为非最高分成绩的记录。

    //全部成绩的最高分:

    select * from score where  sno in (select sno from score  group by sno having count(cno)>1)and degree not in (select max(degree) from score);

    //每一门的最高分:

    select * from score a where sno in (select sno from score group by sno having count(cno)>1) and degree

    21、 查询成绩高于学号为“109”、课程号为“3-105”的成绩的所有记录。

    select * from score where degree > (select degree from score where sno="109" and cno="3-105");

    22、查询和学号为108的同学同年出生的所有学生的Sno、Sname和Sbirthday列。

    select sno,sname,sbirthday from student where year(sbirthday)=(select year(sbirthday) from student where sno="108");

    23、查询“张旭“教师任课的学生成绩。

    select degree from score where score.Cno=(select course.Cno from course where course.Tno = (select teacher.Tno from teacher where teacher.Tname="张旭"));

    24、查询选修某课程的同学人数多于5人的教师姓名。

    select teacher.tname, course.cname from teacher,course,score where teacher.tno=course.tno and course.cno=score.cno and score.cno= (select cno from score group by cno having count(cno)>5);

    25、查询95033班和95031班全体学生的记录。

    select distinct student.*,score.* from student,score where student.sno=score.sno and student.Class="95033" or student.class="95031" and student.sno=score.sno;

    26、  查询存在有85分以上成绩的课程Cno.

    select distinct cno from score where degree>=85;

    27、查询出“计算机系“教师所教课程的成绩表。

    select * from score where cno in(select cno from course where tno in (select tno from teacher where  depart="计算机系"));

    28、查询“计算 机系”与“电子工程系“不同职称的教师的Tname和Prof。

    select * from teacher where depart in('计算机系','电子工程系') group by prof having count(*)=1;

    29、查询选修编号为“3-105“课程且成绩至少高于选修编号为“3-245”的同学的Cno、Sno和Degree,并按Degree从高到低次序排序。

    //3-105成绩高于选修3-245的所有人分数的同学的3-105成绩

    select cno,sno,degree from score where cno="3-105"and degree > (select max(degree) from score where cno="3-245")order by degree desc;

    //3-105成绩高于本人3-245成绩的同学的3-105成绩

    select cno,sno,degree from score a where cno='3-105' and degree> (select degree from score b where cno='3-245' and b.sno=a.sno) order by degree desc;

    30、查询选修编号为“3-105”且成绩高于选修编号为“3-245”课程的同学的Cno、Sno和Degree.

    select cno,sno,degree from score where cno="3-105"and degree > (select max(degree) from score where cno="3-245");

    31、 查询所有教师和同学的name、sex和birthday.

    select teacher.Tname as name,teacher.Tsex as sex,teacher.Tbirthday as birthday from teacher

    union

    select student.Sname as name,student.Ssex as sex,student.Sbirthday as birthday from student;

    32、查询所有“女”教师和“女”同学的name、sex和birthday.

    select teacher.Tname as name,teacher.Tsex as sex,teacher.Tbirthday as birthday from teacher where tsex='女'

    union

    select student.Sname as name,student.Ssex as sex,student.Sbirthday as birthday from student where ssex='女';

    33、 查询成绩比该课程平均成绩低的同学的成绩表。

    select * from score a where degree

    34、 查询所有任课教师的Tname和Depart.

    select tname,depart from teacher where tno in(select tno from course where cno in(select cno from score));

    35 、 查询所有未讲课的教师的Tname和Depart.

    select tname,depart from teacher where tno not in(select tno from course where cno in(select distinct cno from score ) );

    36、查询至少有2名男生的班号。

    select class  from student where ssex='男' group by class having count(sno)>=2;

    37、查询Student表中不姓“王”的同学记录。

    select * from student where sname not like "王%";

    38、查询Student表中每个学生的姓名和年龄。

    select sname,(year(now())-year(sbirthday)) as age from student;

    39、查询Student表中最大和最小的Sbirthday日期值。

    select min(sbirthday),max(sbirthday) from student;

    40、以班号和年龄从大到小的顺序查询Student表中的全部记录。

    select * from student order by class desc,sbirthday asc;

    41、查询“男”教师及其所上的课程。

    select teacher.tname,course.cname from teacher, course  where course.tno=teacher.tno and  teacher.tsex="男";

    42、查询最高分同学的Sno、Cno和Degree列。

    select sno,cno,degree from score where degree =(select max(degree) from score);

    43、查询和“李军”同性别的所有同学的Sname.

    select sname from student where ssex=(select ssex from student where sname='李军');

    44、查询和“李军”同性别并同班的同学Sname.

    select sname from student a where ssex=(select ssex from student b where sname="李军"and a.class=b.class);

    45、查询所有选修“计算机导论”课程的“男”同学的成绩表。

    //法一

    select * from score where cno=(select cno from course where cname="计算机导论") and sno in (select sno from student where ssex="男");

    //法二

    select student.sno,student.sname,score.degree from student,course,score where student.ssex='男' and course.cname='计算机导论' and student.sno=score.sno and course.cno=score.cno;

    展开全文
  • 学生选课系统数据库设计,包括可行性分析,系统分析,逻辑设计,数据库实现,数据库操作。涉及系统E-R图,部分E-R图等。
  • 学生选课数据库SQL语句45道练习题:一、 设有一数据库,包括四个表:学生表(Student)、课程表(Course)、成绩表(Score)以及教师信息表(Teacher)。四个表的结构分别如表1-1的表(一)~表(四)所示,数据如表1-2的表(一)~...

    学生选课数据库SQL语句45道练习题:

    一、            设有一数据库,包括四个表:学生表(Student)、课程表(Course)、成绩表(Score)以及教师信息表(Teacher)。四个表的结构分别如表1-1的表(一)~表(四)所示,数据如表1-2的表(一)~表(四)所示。用SQL语句创建四个表并完成相关题目。

    表1-1数据库的表结构

    表(一)Student (学生表)

    属性名

    数据类型

    可否为空

    含 义

    Sno

    varchar (20)

    学号(主码)

    Sname

    varchar (20)

    学生姓名

    Ssex

    varchar (20)

    学生性别

    Sbirthday

    datetime

    学生出生年月

    Class

    varchar (20)

    学生所在班级

    表(二)Course(课程表)    主外码(主外键)

    属性名

    数据类型

    可否为空

    含 义

    Cno

    varchar (20)

    课程号(主码)

    Cname

    varchar (20)

    课程名称

    Tno

    varchar (20)

    教工编号(外码)

    表(三)Score(成绩表)

    属性名

    数据类型

    可否为空

    含 义

    Sno

    varchar (20)

    学号(外码)

    Cno

    varchar (20)

    课程号(外码)

    Degree

    Decimal(4,1)

    成绩

    主码:Sno+ Cno

    表(四)Teacher(教师表)

    属性名

    数据类型

    可否为空

    含 义

    Tno

    varchar (20)

    教工编号(主码)

    Tname

    varchar (20)

    教工姓名

    Tsex

    varchar (20)

    教工性别

    Tbirthday

    datetime

    教工出生年月

    Prof

    varchar (20)

    职称

    Depart

    varchar (20)

    教工所在部门

    表1-2数据库中的数据

    表(一)Student

    Sno

    Sname

    Ssex

    Sbirthday

    class

    108

    曾华

    1977-09-01

    95033

    105

    匡明

    1975-10-02

    95031

    107

    王丽

    1976-01-23

    95033

    101

    李军

    1976-02-20

    95033

    109

    王芳

    1975-02-10

    95031

    103

    陆君

    1974-06-03

    95031

    表(二)Course

    Cno

    Cname

    Tno

    3-105

    计算机导论

    825

    3-245

    操作系统

    804

    6-166

    数字电路

    856

    9-888

    高等数学

    831

    表(三)Score

    Sno

    Cno

    Degree

    103

    3-245

    86

    105

    3-245

    75

    109

    3-245

    68

    103

    3-105

    92

    105

    3-105

    88

    109

    3-105

    76

    101

    3-105

    64

    107

    3-105

    91

    108

    3-105

    78

    101

    6-166

    85

    107

    6-166

    79

    108

    6-166

    81

    表(四)Teacher

    Tno

    Tname

    Tsex

    Tbirthday

    Prof

    Depart

    804

    李诚

    1958-12-02

    副教授

    计算机系

    856

    张旭

    1969-03-12

    讲师

    电子工程系

    825

    王萍

    1972-05-05

    助教

    计算机系

    831

    刘冰

    1977-08-14

    助教

    电子工程系

    1、 查询Student表中的所有记录的Sname、Ssex和Class列。

    2、 查询教师所有的单位即不重复的Depart列。

    3、 查询Student表的所有记录。

    4、 查询Score表中成绩在60到80之间的所有记录。

    5、 查询Score表中成绩为85,86或88的记录。

    6、 查询Student表中“95031”班或性别为“女”的同学记录。

    7、 以Class降序查询Student表的所有记录。

    8、 以Cno升序、Degree降序查询Score表的所有记录。

    9、 查询“95031”班的学生人数。

    10、 查询Score表中的最高分的学生学号和课程号。(子查询或者排序)

    11、 查询每门课的平均成绩。

    12、查询Score表中至少有5名学生选修的并以3开头的课程的平均分数。

    13、查询分数大于70,小于90的Sno列。

    14、查询所有学生的Sname、Cno和Degree列。

    15、查询所有学生的Sno、Cname和Degree列。

    16、查询所有学生的Sname、Cname和Degree列。

    17、 查询“95033”班学生的平均分。

    18、 假设使用如下命令建立了一个grade表:

    create table grade(low  int(3),upp  int(3),rank  char(1))

    insert into grade values(90,100,’A’)

    insert into grade values(80,89,’B’)

    insert into grade values(70,79,’C’)

    insert into grade values(60,69,’D’)

    insert into grade values(0,59,’E’)

    现查询所有同学的Sno、Cno和rank列。

    19、  查询选修“3-105”课程的成绩高于“109”号同学成绩的所有同学的记录。

    20、查询score中选学多门课程的同学中分数为非最高分成绩的记录。

    21、查询成绩高于学号为“109”、课程号为“3-105”的成绩的所有记录。

    22、查询和学号为108的同学同年出生的所有学生的Sno、Sname和Sbirthday列。

    23、查询“张旭“教师任课的学生成绩。

    24、查询选修某课程的同学人数多于5人的教师姓名。

    25、查询95033班和95031班全体学生的记录。

    26、  查询存在有85分以上成绩的课程Cno.

    27、查询出“计算机系“教师所教课程的成绩表。

    28、查询“计算机系”与“电子工程系“不同职称的教师的Tname和Prof。

    29、查询选修编号为“3-105“课程且成绩至少高于选修编号为“3-245”的同学的Cno、Sno和Degree,并按Degree从高到低次序排序。

    30、查询选修编号为“3-105”且成绩高于选修编号为“3-245”课程的同学的Cno、Sno和Degree.

    31、 查询所有教师和同学的name、sex和birthday.

    32、查询所有“女”教师和“女”同学的name、sex和birthday.

    33、 查询成绩比该课程平均成绩低的同学的成绩表。

    34、 查询所有任课教师的Tname和Depart.

    35 、 查询所有未讲课的教师的Tname和Depart.

    36、查询至少有2名男生的班号。

    37、查询Student表中不姓“王”的同学记录。

    38、查询Student表中每个学生的姓名和年龄。

    39、查询Student表中最大和最小的Sbirthday日期值。

    40、以班号和年龄从大到小的顺序查询Student表中的全部记录。

    41、查询“男”教师及其所上的课程。

    42、查询最高分同学的Sno、Cno和Degree列。

    43、查询和“李军”同性别的所有同学的Sname.

    44、查询和“李军”同性别并同班的同学Sname.

    45、查询所有选修“计算机导论”课程的“男”同学的成绩表。

    答案:

    1.select sname,ssex,class from student

    2.select distinct depart from teacher

    3.select * from student

    4.select * from score where degree btween 60 and 80;

    5.select * from score where degree in(85,86,88)

    6.select * from student where class='95031' or ssex='女'

    7.select * from student order by class desc

    8.select * from score order by cno,degree desc

    9.select count(*) from student where class='95031'

    10.select sno,cno from score where degree=(select max(degree) from score)

    select * from score order by degree desc limit 0,1

    11.select cno,avg(degree) from score group by cno

    12.select avg(degree) from score where cno like'3%' and cno in(select cno from score group by cno having count(*)>4)

    select avg(degree) from score group by cno having count(*)>4 and cno like '3%'

    13.select sno from score where degree>70 and degree<90

    14.select student.sname,score.cno,score.degree from student,score where student.sno = score.sno

    15.select score.sno,course.cname,score.degree from score,course where score.cno=course.cno

    16.select student.sname,course.cname,degree from score,student,course where student.sno=score.sno and score.cno=course.cno

    17.select avg(degree) from score where sno in(select sno from student where class='95033')

    18.select sno,cno,rank from score,grade where degree between low and upp

    19.(1)select * from score where cno = '3-105' and degree>(select max(degree) from score where sno='109')

    (2)select * from score where cno = '3-105' and degree>(select max(degree) from score where sno='109' and cno='3-105')

    20.(1)select * from score where sno in(select sno from score group by sno having count(*)>1) and degree

    (2)select * from score a where sno in(select sno from score group by sno having count(*)>1) and degree

    21.select * from score where degree>(select degree from score where sno='109' and cno='3-105')

    22.select sno,sname,sbirthday from student where YEAR(sbirthday) = (select YEAR(sbirthday) from student where sno='108')

    23.select * from score where cno in(select cno from course where tno =(select tno from teacher where tname='张旭'))

    24.select tname from teacher where tno in(select tno from course where cno in(select cno from score group by cno having count(*)>5))

    25.select * from student where class in('95033','95031')

    26.select distinct cno from score where degree>85

    27.select * from score where cno in(select cno from course where tno in(select tno from teacher where depart='计算机系'))

    28.select tname,prof from teacher where depart='计算机系' and prof not in(select prof from teacher where depart='电子工程系')

    union

    select tname,prof from teacher where depart='电子工程系' and prof not in(select prof from teacher where depart='计算机系')

    select tname,prof from teacher where prof not in( select prof from teacher where depart='计算机系' and prof in(select prof from teacher where depart='电子工程系'))

    29.select * from score where cno='3-105' and degree>any(select degree from score where cno='3-245')

    30.select * from score where cno='3-105' and degree>all(select degree from score where cno='3-245')

    31.select sname,ssex,sbirthday from student

    union

    select tname,tsex,tbirthday from teacher

    32.select sname,ssex,sbirthday from student where ssex='女'

    union

    select tname,tsex,tbirthday from teacher where tsex='女'

    33.select * from score a where degree

    34.select tname,depart from teacher where tno in(select tno from course where cno in(select cno from score))

    35.select tname,depart from teacher where tno in(select tno from course where cno not in(select cno from score))

    36.select class from student where ssex='男' group by class having count(*)>1

    37.select * from student where sname not like '王%'

    38.select sname,year(now())-year(sbirthday) from student

    39.select max(sbirthday),min(sbirthday) from student

    40.select * from student order by class desc,sbirthday

    41.select tname,cname from teacher,course where teacher.tno = course.tno and tsex='男'

    42.select * from score where degree=(select max(degree) from score)

    43.select sname from student where ssex=(select ssex from student where sname='李军')

    44.select sname from student where ssex=(select ssex from student where sname='李军') and class=(select class from student where sname='李军')

    45.select * from score where sno in(select sno from student where ssex='男') and cno in(select cno from course where cname='计算机导论')

    总结:

    1.联合主键:主码:aa+bb  代码:primary key(aa,bb)

    2.若插入数据后出现      [Err] 1050 - Table 'student' already exists

    把原来的表删除再运行代码就行了

    3.查询不重复数据:select distinct a from b;

    4.把一个表中Cno相同行分组并按Degree求平均值

    select Cno,avg(Degree) from Score group by Cno having count(Cno)

    5.至少高于:至少高于一个,用any

    高于:高于所有,用all

    mysql常用函数:

    一、数学函数

    数学函数主要用于处理数字,包括整型、浮点数等。

    ABS(x)

    返回x的绝对值

    SELECT ABS(-1) -- 返回1

    CEIL(x),CEILING(x)

    返回大于或等于x的最小整数

    SELECT CEIL(1.5) -- 返回2

    FLOOR(x)

    返回小于或等于x的最大整数

    SELECT FLOOR(1.5) -- 返回1

    RAND()

    返回0->1的随机数

    SELECT RAND() --0.93099315644334

    RAND(x)

    返回0->1的随机数,x值相同时返回的随机数相同

    SELECT RAND(2) --1.5865798029924

    PI()

    返回圆周率(3.141593)

    SELECT PI() --3.141593

    TRUNCATE(x,y)

    返回数值x保留到小数点后y位的值(与ROUND最大的区别是不会进行四舍五入)

    SELECT TRUNCATE(1.23456,3) -- 1.234

    ROUND(x,y)

    保留x小数点后y位的值,但截断时要进行四舍五入

    SELECT ROUND(1.23456,3) -- 1.235

    POW(x,y).POWER(x,y)

    返回x的y次方

    SELECT POW(2,3) -- 8

    SQRT(x)

    返回x的平方根

    SELECT SQRT(25) -- 5

    EXP(x)

    返回e的x次方

    SELECT EXP(3) -- 20.085536923188

    MOD(x,y)

    返回x除以y以后的余数

    SELECT MOD(5,2) -- 1

    二、字符串函数

    字符串函数是MySQL中最常用的一类函数,字符串函数主要用于处理表中的字符串。

    函数说明

    CHAR_LENGTH(s)

    返回字符串s的字符数

    SELECT CHAR_LENGTH('你好123') -- 5

    CONCAT(s1,s2,...)

    将字符串s1,s2等多个字符串合并为一个字符串

    SELECT CONCAT('12','34') -- 1234

    CONCAT_WS(x,s1,s2,...)

    同CONCAT(s1,s2,...)函数,但是每个字符串直接要加上x

    SELECT CONCAT_WS('@','12','34') -- 12@34

    INSERT(s1,x,len,s2)

    将字符串s2替换s1的x位置开始长度为len的字符串

    SELECT INSERT('12345',1,3,'abc') -- abc45

    UPPER(s),UCAASE(S)

    将字符串s的所有字母变成大写字母

    SELECT UPPER('abc') -- ABC

    LOWER(s),LCASE(s)

    将字符串s的所有字母变成小写字母

    SELECT LOWER('ABC') -- abc

    LEFT(s,n)

    返回字符串s的前n个字符

    SELECT LEFT('abcde',2) -- ab

    RIGHT(s,n)

    返回字符串s的后n个字符

    SELECT RIGHT('abcde',2) -- de

    LTRIM(s)去掉字符串s开始处的空格

    RTRIM(s)去掉字符串s结尾处的空格

    TRIM(s)去掉字符串s开始和结尾处的空格

    SELECT TRIM('@' FROM '@@abc@@') -- abc

    REPEAT(s,n)

    将字符串s重复n次

    SELECT REPEAT('ab',3) -- ababab

    SPACE(n)返回n个空格

    REPLACE(s,s1,s2)

    将字符串s2替代字符串s中的字符串s1

    SELECT REPLACE('abca','a','x') --xbcx

    STRCMP(s1,s2)比较字符串s1和s2

    SUBSTRING(s,n,len)获取从字符串s中的第n个位置开始长度为len的字符串

    LOCATE(s1,s),POSITION(s1 IN s)

    从字符串s中获取s1的开始位置

    SELECT LOCATE('b', 'abc') -- 2

    REVERSE(s)

    将字符串s的顺序反过来

    SELECT REVERSE('abc') -- cba

    FIELD(s,s1,s2...)

    返回第一个与字符串s匹配的字符串位置

    SELECT FIELD('c','a','b','c') -- 3

    三、日期时间函数

    MySQL的日期和时间函数主要用于处理日期时间。

    函数说明

    CURDATE(),CURRENT_DATE()

    返回当前日期

    SELECT CURDATE()

    ->2014-12-17

    CURTIME(),CURRENT_TIME

    返回当前时间

    SELECT CURTIME()

    ->15:59:02

    NOW(),CURRENT_TIMESTAMP(),LOCALTIME(),

    SYSDATE(),LOCALTIMESTAMP()

    返回当前日期和时间

    SELECT NOW()

    ->2014-12-17 15:59:02

    YEAR(d),

    MONTH(d)

    DAY(d)

    返回日期d中的月份值,1->12

    SELECT MONTH('2011-11-11 11:11:11')

    ->11

    MONTHNAME(d)

    返回日期当中的月份名称,如Janyary

    SELECT MONTHNAME('2011-11-11 11:11:11')

    ->November

    DAYNAME(d)

    返回日期d是星期几,如Monday,Tuesday

    SELECT DAYNAME('2011-11-11 11:11:11')

    ->Friday

    DAYOFWEEK(d)

    日期d今天是星期几,1星期日,2星期一

    SELECT DAYOFWEEK('2011-11-11 11:11:11')

    ->6

    WEEKDAY(d)

    日期d今天是星期几,

    0表示星期一,1表示星期二

    WEEK(d),WEEKOFYEAR(d)

    计算日期d是本年的第几个星期,范围是0->53

    SELECT WEEK('2011-11-11 11:11:11')

    ->45

    DAYOFYEAR(d)

    计算日期d是本年的第几天

    SELECT DAYOFYEAR('2011-11-11 11:11:11')

    ->315

    DAYOFMONTH(d)

    计算日期d是本月的第几天

    SELECT DAYOFMONTH('2011-11-11 11:11:11')

    ->11

    QUARTER(d)

    返回日期d是第几季节,返回1->4

    SELECT QUARTER('2011-11-11 11:11:11')

    ->4

    HOUR(t)

    返回t中的小时值

    SELECT HOUR('1:2:3')

    ->1

    MINUTE(t)

    返回t中的分钟值

    SELECT MINUTE('1:2:3')

    ->2

    SECOND(t)

    返回t中的秒钟值

    SELECT SECOND('1:2:3')

    ->3

    四、系统信息函数

    系统信息函数用来查询MySQL数据库的系统信息。

    函数作用

    VERSION()

    返回数据库的版本号

    SELECT VERSION()

    ->5.0.67-community-nt

    CONNECTION_ID() 返回服务器的连接数

    DATABASE()、SCHEMA返回当前数据库名

    USER()、SYSTEM_USER()

    返回当前用户

    五、加密函数

    加密函数是MySQL用来对数据进行加密的函数。

    1、PASSWORD(str)

    该函数可以对字符串str进行加密,一般情况下,PASSWORD(str)用于给用户的密码加密。

    SELECT PASSWORD('123')

    ->*23AE809DDACAF96AF0FD78ED04B6A265E05AA257

    2、MD5

    MD5(str)函数可以对字符串str进行散列,可以用于一些普通的不需要解密的数据加密。

    SELECT md5('123')

    ->202cb962ac59075b964b07152d234b70

    3、ENCODE(str,pswd_str)与DECODE(crypt_str,pswd_str)

    ENCODE函数可以使用加密密码pswd_str来加密字符串str,加密结果是二进制数,需要使用BLOB类型的字段保存。该函数与DECODE是一对,需要同样的密码才能够解密。

    SELECT ENCODE('123','xxoo')

    ->;vx

    SELECT DECODE(';vx','xxoo')

    ->123

    insert into login values('lch','alvin',encode('123','xxoo'),'50')

    select Name,decode(Password,'xxoo') from login where username='lch'

    展开全文
  • 学生选课系统数据库SQL语句考试题

    千次阅读 2021-01-27 05:28:04
    SELECT *FROM score ORDER BY cno SELECT *FROM score ORDER BY degree DESC --9、 查询“95031”班的学生人数。 SELECT COUNT(*) from Student WHERE class="95031" --10、 查询Score表中的最高分的学生学号和...
  • 1.创建学生选课数据库 CREATE DATABASE students; 2.在学生选课数据库中创建数据表 (1)创建学生表 CREATE TABLE studentlnfo -> ( sno CHAR(8) PRIMARY KEY NOT NULL, -> sname varchar(10) NOT NULL, ...
  • 单选(0.5分) 交感神经兴奋时少尿的主要原因是单选(0.5分) α2受体激动剂(可乐定)的作用是单选(0.5分) 低温、缺氧或代谢抑制剂影响细胞的Na+-K+泵活动时,生物电的改变为单选(0.5分) 交感神经节前纤维释放的递质是...
  • 学生选课管理系统 数据库课程设计
  • 学生选课系统数据库的设计与实现

    千次阅读 2021-02-12 05:20:00
    学生的信息应该有(学号,姓名,性别,系别,年龄,入学时间,专业,登陆密码)教师的信息应该有(教室工号,姓名,性别,密码,职称,所在系院,课程号)课程表(课程号,课程名,先修课号,学分)学生选课(学号,课程号...
  • insert into course values('2','数学',null,2),('6','数据处理',null,2),('4','操作系统','6',3),('7','PASCAL语言','6',4),('5','数据结构','7',4),('1','数据库','5',4),('3','信息系统','1',4); insert into sc...
  • 学校学生选课系统数据库

    热门讨论 2009-12-29 14:58:53
    学校学生选课系统数据库,利用SQL SERVER MANAGEMENT STUDIO 创建数据库,名称为学生选课. 表的定义如下所示 学生(学号,姓名,性别,出生日期,院系名称,备注); 课程(课程号,课程名,先行课,学分); 选修...
  • /* 关系型数据库概论 1、-- DQL、DDL、DML、DCL DQL数据查询语言: 用来查询表信息,select、from、where DDL数据定义语言:用来创建数据库中的各种对象--表、视图,create table/view/index... DML数据操纵语言:...
  • 数据库数据增删改查练习题(1)——学生选课数据库 基本数据表 S(SNO,SNAME,AGE,SEX)学生 C(CNO,CNAME,TEACHER)课程 SC(SNO,CNO,GRADE)选课 练习题 试用SQL表达式实现下列查询: 1)查询“程军”老师所...
  • 数据库原理课程设计报告,包含设计的报告以及源代码,源代码的运行环境是Java,做的项目是学生选课管理系统,其中包含数据库设计的ER图,可以提供给学生提供简单的学习。
  • 用java实现的学生选课管理系统源码,需要自行自己电脑的连接数据库
  • 1,视图概念:视图是一个逻辑结构,本身不包含任何数据,是一个可命名的select语句。透过视图可以看到底层数据,但是视图和数据是相互独立的。2,创建视图需要有DBA权限。3,语法:CREATE [OR REPLACE] [FORCE|...
  • 【单选题】湿空气的下列参数:I.干球温度、II.湿球温度、III.露点温度,它们之间的大小关系是【填空题】在缺省情况下,所创建的索引是_________索引。【其它】使用 T-SQL 命令,完成...创建优秀学生视图(学号,姓名,平均...
  • 大学数据库课程设计–一个简单的学生选课系统 一、系统简介 一个超级简单的学生选课系统,使用Windows窗体设计界面,使用C#语言实现各种功能,数据库使用的是SQL。由于时间原因,做的非常仓促,系统中没有查询功能,...
  • 很好很强大的数据流图,英文翻译,Visio制作
  • 前言不知不觉已经大二了,快要步入大三了,回想过去,自己好像都没有做过什么实际的编程活动,自己...题目这个作业题目是很常见的一个MySQL例子,二选一,一个是学生选课系统,另一个是超市货物管理,因为学生选课系...
  • 初次获得有机转换产品认证证书一年内生产的有机转换产品,可以使用有机转换产品认证标志。配戴者瞬目不良是角膜接触镜镜片脂质沉淀物形成的诱因之一。青年初期(高中时期)是抽象逻辑思维能力急剧增强,自我意识逐渐...
  • 自己做的数据库应用系统设计大作业——学生选课信息管理系统,SQL Server 2000和VB开发的,上传文件中包括word版系统设计说明书、实验报告、SQLServer数据库数据文件、日志文件以及VB源程序。
  • 针对教材上的学生-课程-选课数据库,编写一个数据库应用程序,让同学们可以通过该应用查看课程信息并进行选课。功能应包括: 1. 按学号查看某位同学已修和已选修的全部课程; 2. 可以查看选修某门课程的全部同学,并...
  • (6)学生选课管理、考试(登记分数)、补考重修管理 (7)系统还应该提供强大数据统计、查询、报表生成以及打印等功能。 (8)用户权限管理 (9)异常处理 1.2 开发语言:Java 1.3 开发工具:Eclipse 1.4 数据库:MySQL ...
  • 学生选课系统sql

    千次阅读 2019-11-04 21:46:19
    学生选课系统 1.创建学生选课系统 2.切换数据库 3.创建学生表 tbstudent 主键stuid ,姓名stuname,性别stusex,生日stubirth,电话stutel,住址stuaddr,照片shuphoto(以二进制存) 4.创建课程表tbcourse 主键cosid,班级...
  • 高校学生选课系统及数据库源代码 欢迎各位光临我的上传文件
  • 主要学习如下内容 一、数据库和SQL概述:了解何谓数据库、何谓SQL,以及MySQL的简单介绍。 二、数据定义语言DDL:讲解如何创建表、重命名表、删除表和更新表。 三、数据操作语言DML:讲解如何插入、更新和删除数据...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 20,652
精华内容 8,260
关键字:

学生选课数据库