基于学生管理系统建立 数据库 和 表


表的样式:                         

表(一)Student (学生use)

属性名

数据类型

可否为空

含 义

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)

教工所在部门

以上是四张表的样式:

下面我们先建立一个数据库,用来存这些表项。

代码如下:

*******添加数据库*******
create database stu;
use stu *******建立表*******
create table student(
sno varchar(20) not null primary key comment '学号(主码)',
sname varchar(20) not null comment '学生姓名',
ssex varchar(20) not null comment '学生性别',
sbirthfay Datetime null comment '学生出生年月',
class varchar(20) null comment '学生所在班级'
); create table course(
cno varchar(20) not null primary key comment '课程号(主码)',
cname varchar(20) not null comment '课程名称',
tno varchar(20) not null comment '教工编号'
); create table score(
sno varchar(20) not null comment '学号',
cno varchar(20) not null comment '课程号',
degree Decimal(4,1) null comment '成绩',
primary key(sno,cno)
); create table teacher(
tno varchar(20) not null primary key comment '教工编号(主码)',
tname varchar(20) not null comment '教工姓名',
tbirthday datetime null comment '教工出生年月',
prof varchar(20) null comment '职称',
depart varchar(20) not null comment '教工所在部门',
);
*******添加一个字段******
alter table teacher add tsex varchar(20) not null comment '老师性别';
*******删除字段*******
alter table 表名 drop 表项名;
加索引
   mysql> alter table 表名 add index 索引名 (字段名1[,字段名2 …]);
例子: mysql> alter table employee add index emp_name (name);

加主关键字的索引
  mysql> alter table 表名 add primary key (字段名);
例子: mysql> alter table employee add primary key(id);

加唯一限制条件的索引
   mysql> alter table 表名 add unique 索引名 (字段名);
例子: mysql> alter table employee add unique emp_name2(cardnumber);

删除某个索引
   mysql> alter table 表名 drop index 索引名;
例子: mysql>alter table employee drop index emp_name;

增加字段:
mysql> ALTER TABLE table_name ADD field_name field_type;

修改原字段名称及类型:
mysql> ALTER TABLE table_name CHANGE old_field_name new_field_name field_type;

删除字段:
MySQL ALTER TABLE table_name DROP field_name;

*******删除数据库*********
mysql> drop database 库名;

好啦  数据库和表我们都建完了,我们可以用

show tables ;查看当前库内存在的表。

现在表已经建好了,我们就可以按照表内的数据格式往里面依次添加数据了

代码如下:

insert into student values
('','曾华','男','1997-09-01',''),
('','匡明','男','1975-10-02',''),
('','王丽','女','1976-01-23',''),
('','李军','女','1976-02-20',''),
('','王芳','女','1976-02-10',''),
('','陆君','男','1974-06-03',''); insert into course values
('3-105','计算机导论',''),
('3-245','操作系统',''),
('6-166','数字电路',''),
('9-888','高等数学',''); insert into teacher values
('','李诚','1958-12-02','副教授','计算机系','男'),
('','张旭','1969-03-12','讲师','电子工程系','男'),
('','王萍','1972-05-05','助教','计算机系','女'),
('','刘冰','1977-08-14','助教','电子工程系','女'); insert into score values

(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');

我们添加完后就可以用

select * from 表名;

查看表中的所有数据

修改表中数据

语法:update 表名 set 字段=新值,… where 条件
   mysql> update MyClass set name='Mary' where id=1;

例1:MySQL UPDATE语句:
   UPDATE [LOW_PRIORITY] [IGNORE] tbl_name SET col_name1=expr1 [, col_name2=expr2 ...] [WHERE where_definition] [ORDER BY ...] [LIMIT row_count]

2018-08-11

MySql——进阶一(库表的建 删 改)的更多相关文章

  1. MySQL数据库的库表迁移

    最近在研究MySQL数据库的库表迁移问题,主要分为两种情况,一种情况是迁移数据库的表的全部字段,另一种是迁移数据库的表的部分字段.前一种情况是直接使用mysqldump命令来实现,后一种情况则是采用数 ...

  2. MySQL进阶:约束,多表设计,多表查询,视图,数据库备份与还原

    MySQL进阶 知识点梳理 一.约束 1. 外键约束 为什么要有外键约束 例如:一个user表,一个orderlist 如果现在想要直接删除id为1的张三,但是orderlist里还有用户id为1的订 ...

  3. Mysql数据库 的库表简易操作

    一. 库的操作 1.创建数据库 创建数据库: create database 库名 charset utf8;   charset uft8  可选项 1.2 数据库命名规范: 可以由字母.数字.下划 ...

  4. MySQL查看某库表大小及锁表情况

    查询所有数据库占用磁盘空间大小的SQL语句: 语句如下: select TABLE_SCHEMA, concat(truncate(sum(data_length)/1024/1024,2),' MB ...

  5. mysql: 查看某库表大小

    查询所有数据库占用磁盘空间大小的SQL语句: 语句如下 1 2 3 4 5 select TABLE_SCHEMA, concat(truncate(sum(data_length)/1024/102 ...

  6. mysql查看某库表大小

    查询所有数据库占用磁盘空间大小的SQL语句: 语句如下 select TABLE_SCHEMA, concat(truncate(sum(data_length)/1024/1024,2),' MB' ...

  7. MySql基础学习-库表操作

    1.创建数据 CREATE DATABASE mysql_study; 2.连接数据库 USE mysql_study 3.创建数据表 CREATE TABLE person( id int auto ...

  8. mysql进阶(五)数据表中带OR的多条件查询

    MySQL数据表中带OR的多条件查询 OR关键字可以联合多个条件进行查询.使用OR关键字时: 条件 1) 只要符合这几个查询条件的其中一个条件,这样的记录就会被查询出来. 2) 如果不符合这些查询条件 ...

  9. mysql进阶(九)多表查询

    MySQL多表查询 一 使用SELECT子句进行多表查询 SELECT 字段名 FROM 表1,表2 - WHERE 表1.字段 = 表2.字段 AND 其它查询条件 SELECT a.id,a.na ...

随机推荐

  1. Kafka 单节点多Kafka Broker集群

    Kafka 单节点多Kafka Broker集群 接前一篇文章,今天搭建一下单节点多Kafka Broker集群环境. 配置与启动服务 由于是在一个节点上启动多个 Kafka Broker实例,所以我 ...

  2. Python如何输出带颜色的文字

    print('\033[31m%s' % "这是前景色") 这是前景色 print('%s' % "这是前景色") 这是前景色 print('\033[1;31 ...

  3. 【剑指offer】二叉树中和为某一值的路径,C++实现

    原创文章,转载请注明出处! 博客文章索引地址 1.题目 输入一颗二叉树和一个整数,打印出二叉树中结点值的和为输入整数的所有路径.路径由结点和有向边组成,从根结点到叶节点. // 二叉树结点的定义 st ...

  4. MYSQL 调优和使用必读

    转载自:http://blog.eood.cn/mysql#rd?sukey=fc78a68049a14bb29c60f21c5254b15a1a9234459cf25ff467de14129ca11 ...

  5. linux自学(九)之开始centos学习,安装数据库MariaDB

    上一篇:linux自学(八)之开始centos学习,安装tomcat 数据库我们不安装mysql,我网上看了好多资料发现mysql安装比较麻烦,我们这里安装同一个父亲的产品MariaDB.驱动,端口等 ...

  6. LOJ2424 NOIP2015 子串 【DP】*

    LOJ2424 NOIP2015 子串 LINK 题目大意是给你两个序列,在a序列中选出k段不重叠的子串组成b序列,问方案数 首先我们不考虑相邻的两段,把所有相邻段当成一段进行计算 然后设dpi,j, ...

  7. 20179223《Linux内核原理与分析》第七周学习笔记

    视频知识学习 1.fork()函数被调用一次,但返回两次: 2.Linux通过复制父进程来创建一个子进程,通过调用fork来实现: 3.Linux会为每个子进程动态的分配一个task_struct结构 ...

  8. 解决 mklink 使用中的各种坑(硬链接,软链接/符号链接,目录链接)

    通过 mklink 命令可以创建文件或文件夹的链接,而这种链接跟快捷方式是不一样的.然而我们还可能会遇到其使用过程中的一些坑,本文将整理这些坑并提供解决方法.   0x00 背景介绍:mklink m ...

  9. 《DSP using MATLAB》示例Example7.7

    Type-4 Linear-Phase FIR filter 代码: h = [-4, 1, -1, -2, 5, 6, -6, -5, 2, 1, -1, 4]; M = length(h); n ...

  10. PAT 1009 说反话 C语言

    给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出. 输入格式:测试输入包含一个测试用例,在一行内给出总长度不超过80的字符串.字符串由若干单词和若干空格组成,其中单词是由英文字母(大小写有区 ...