总分 | 您所在的位置:网站首页 › libpng使用 › 总分 |
篇首语:本文由编程笔记#小编为大家整理,主要介绍了MySQL制作成绩表单视图相关的知识,希望对你有一定的参考价值。 问题大家平时所看到的成绩表单基本上都是用excel来制作的,学习数据库基础,你就多了一项用mysql制作表单的技能。不仅方便快捷,输入一些命令就可以很直观的看出重要数据;而且便于储存。那么如何用MySQL制作一张简单的成绩表单呢? 方法下载安装MySQL后可以直接在命令行启动MySQL输入命令制作表单。 本文介绍用Navicat for MySQL软件执行MySQL操作制作。制作流程是创建表格-添加数据-创建视图-查询生成表格。 创建表格#如果存在school这个数据库就删除schooldrop DATABASE if EXISTS school; create DATABASE school; #再创建schooluse school;#班级信息表drop table if EXISTS class; #如果存在表格先删除表格CREATE TABLE class( #创建表格和列(数据类型和条件)num int(4) not null PRIMARY key auto_increment,bname VARCHAR(32) not null UNIQUE,sex VARCHAR(20) ,age int(2) not null);#成绩信息表drop TABLE if EXISTS grade;CREATE TABLE grade(cno int(4) PRIMARY key auto_increment,name VARCHAR(20) not null,chinese INT(4) not null, #not null:不为空math INT(4) not null,english INT(4) NOT NULL)auto_increment=101; #cno从101开始 表1 添加数据desc class; #查看表结构INSERT into class (num,bname,sex,age) values(101,"张三","男",18); #插入数据INSERT into class (num,bname,sex,age) values(102,"李四","女",18);insert into class (num,bname,sex,age) values(103,"王五","男",19),(104,"赵六","女",20);insert into class values(105,"黄七","女",19);desc grade; #查看表结构insert into grade(name,chinese,math,english)values("张三",90,85,95),("李四",92,95,80),("王五",96,94,85),("赵六",88,98,94),("黄七",91,93,98); 表2 创建视图CREATE view view_info #创建视图view_infoAs #将num命名为学号,bname命名为姓名以此类推。从class a表和grade b表中查找。select num as 学号 ,bname as 姓名,chinese as 语文,math as 数学,english as 英语,chinese+math+english AS 总分from class a,grade b where a.num=b.cno order by 总分 desc; # where中为约束条件,order by 总分 desc:按总分降序排列 #查询视图view_info和添加名次列从1开始自动递增Select A.*, (@i:=@i+1) as 名次 from view_info A,(Select @i:=0) B; 表3 查询生成表格 用MySQL制作表单有很多的注意事项。创建数据库和表格的时候要先看是否有相同名字的,如果有先删除再创建;创建视图要写好where约束条件;视图的select不可以包含变量和参数。 |
CopyRight 2018-2019 实验室设备网 版权所有 |