mysql创建教师表_day34 mysql 认识数据库,创建学生,教师,学院表
数据库 - 数据的仓库(集散地) - database - 实现数据持久化和数据管理
持久化 - 将数据从内存转移到能够长久保存数据的存储介质的过程
数据库的分类:关系型数据库(SQL)和非关系型数据库(NoSQL)
文件系统 / 层次数据库 / 网状数据库
关系型数据库
1970s - E.F.Codd - IBM研究员 - System R
理论基础:关系代数和集合论
具体表象:用二维表来保存数据 - 学生表
~ 行:一条记录 - 一个学生的信息
~ 列:一个字段 - 学生的某个属性,例如:学号、姓名、出生日期
~ 主键列:能够唯一标识一条记录的列,例如:学生的学号
编程语言:SQL - 结构化查询语言
~ DDL - 数据定义语言 - create / drop / alter
~ DML - 数据操作语言 - insert / delete / update / select
~ DCL - 数据控制语言 - grant / revoke
LAMP = Linux + Apache + MySQL + PHP
PHP ---> Java
MySQL ---> Oracle
Linux ---> 小型机
去IOE运动
IBM的小型机
Oracle的数据库
EMC的存储设备
关系型数据库产品:
Oracle - 甲骨文
IBM DB2
Microsoft SQLServer
Sybase
MySQL
PostgreSQL
SQLite
连接MySQL的图形化客户端工具:
Navicat for MySQL - 病猫
SQLyog - 海豚
Toad for MySQL - 蛤蟆
学生(学号、姓名、性别、生日、家庭住址)
学院(编号、名称、网站、……)
老师(工号、姓名、性别、生日、职称、所在学院编号)
课程(编号、名称、学分)
设计数据库中的表 - ER图(实体关系图)- 概念模型图
读者、图书
用户、购物车、商品、订单
用户、单车
人、身份证
实体:学生、学院
关系:属于
重数:多对一
代码:
drop database if exists school;
-- 如果存在school的库就先删除
create database school default charset utf8;
use school;
-- 创建school的库并指定编码
-- 创建学生表
drop table if exists tb_student;
-- 如果存在student的表就先删除
create table tb_student
(
stuid int not null comment '学号',
-- 学生id 是整数 不能为空,并指定描述为'学号'
stuname varchar(20) not null comment '姓名',
-- 学生姓名不能为空且设定字符串长度最多为20个字符
stusex bit default 1 comment '性别',
-- 学生性别 bit 默认为1
stubirth date comment '生日',
-- 生日是日期格式
primary key (stuid)
-- 设置学生id为主键
);
alter table tb_student add column stuaddr VARCHAR(255);
-- 修改 学生表 增加 一个 地址列
alter table tb_student change column stuaddr stuaddr VARCHAR(511);
-- 修改 地址列 为新的地址列
alter table tb_student DROP column stutaddr;
-- 删除学生表的地址列
--插入方式一 :
insert into tb_student values(1001,'张三丰',1,'1982-2-2','湖北');
-- 插入一个学生(要与前面定义的顺序一致编号,姓名,性别,生日,地址)
-- 注意:需要哪个语句的执行就去选择 那句执行一次
insert into tb_student values(1002,'张无极',1,'1992-2-2','湖南');
-- 生日和名字都是字符串,要加单引号
insert into tb_student (stuid, stuname) values(1003,'张翠花');
-- 插入方式二:同时添加三个学生
insert into tb_student (stuid,stuname,stusex) values
(1005,'林晓',default),
(1006,'郭靖',1),
(1007,'石达开',1);
-- TRUNCATE TABLE tb_student
delete from tb_student where stuid=1005;
-- 删除id为1005的学生
update tb_student set stuaddr='四川成都' where stuid=1006 or stuid=1007;
-- 更新数据
update tb_student set stuaddr='四川成都' where stuid in (1006,1007);
update tb_student set stubirth='1900-2-3',stuaddr='四川达州' where stuid = 1003;
-- 创建学院表
drop table if exists tb_college;
create table tb_college
(
colid int auto_increment comment '编号',
-- 学院id 自动编号 整数 描述为编号
colname varchar(20) not null comment'名称',
colweb varchar(2034) comment'网站',
primary key (colid)
);
-- 插入学院记录
insert into tb_college (colname) values
('外国语学院'),
('计算机学院'),
('经济管理学院');
-- 修改学生表添加外键约束(参照完整性)
alter table tb_student add constraint fk_student_colid foreign key (colid) references tb_college(colid);
alter table tb_college add column colid int;
update tb_student set colid = 1 where stuid between 1001 and 1003;
update tb_student set colid = 2 where stuid in (1004,1006);
update tb_student set colid = 3 where stuid=1007;
-- 创建老师表
drop table if exists tb_teacher;
create table tb_teacher
(teaid int not null,
teaname varchar(20) not null,
teasex bit default 1,
teabirth date,
teatitle varchar(100) default '助教',
colid int not null
-- PRIMARY key (teaid),
-- foreign key (colid) references tb_college(colid),
);
alter table tb_teacher add constraint pk_teacher_colid PRIMARY key(teaid);
alter table tb_teacher add CONSTRAINT fk-teacher_colid FOREIGN key (colid) REFERENCES tb_colleage;
mysql创建教师表_day34 mysql 认识数据库,创建学生,教师,学院表相关推荐
- Linux+MySQL+MyCat实现分库分表,通过MyCat数据库中间件实现分库分表配置实战
目录 前言 Linux+MySQL+MyCat实现读写分离,主从同步的解决方案 一.Linux下MySQL数据库服务的安装与部署 二.下载Linux MyCat 三.上传Linux服务器,并解压 四. ...
- phpstudy mysql创建表_MySQL_Mysql入门基础 数据库创建篇,1.创建数据表---基础(高手跳 - phpStudy...
Mysql入门基础 数据库创建篇 1.创建数据表---基础(高手跳过) 正统方法:create [TEMPORARY] table 表名 [if not exists] (创建的列项定义) [表的选项 ...
- mysql数据库是以表为单位存储的,创建一个以数据库名称为参数的MySQL存储过程,以列出具有特定数据库中详细信息的表。...
假设当前我们正在使用一个名为" query"的数据库,并且其中包含以下表-mysql> Show tables in query; +-----------------+ | ...
- mysql添加自团_Mysql入门基础 数据库创建篇
1.创建数据表---基础(高手跳过) 正统方法:create [TEMPORARY] table 表名 [if not exists] (创建的列项定义) [表的选项] [分区的选项];#正统的创建方 ...
- linux系统中db2创建表空间,为DB2数据库创建表空间
数据库中的表空间(tablespace) 是一个逻辑层,一些数据库对象(比如表.视图和索引)驻留在这里.一个数据库可以有多个表空间.在首次创建数据库时,DB2 会自动地创建一组表空间. 在 Contr ...
- mysql查询结果作为一个表_例题:数据库查询结果作为一个表
假如有两个表 表1:product (productID,productName) 表2:consume (productID,nums) //nums表示对应的产品的销量 问题:列出每个产品ID, ...
- mysql表e-r关系_数据库E-R图及关系表
刘浩 2016270380 E-R图 数据表 代码 USE [store] GO /****** Object: Table [dbo].[商品] Script Date: 04/16/2018 20 ...
- oracle数据库查看所有表和注释,oracle数据库当前用户下所有表名和表名的注释
Markdown使用指南(2)-- 键盘符号说明 符号 中文名 英文名 ! 叹号 exclamation mark/bang ? 问号 question mark , 逗号 comma . 点号 do ...
- mysql创建数据库后怎么导入表_MySQL--初步了解数据库和表,创建数据库并导入数据...
在上一篇文章当中,我们初步了解了MySQL Workbench的图形界面. 接下来,我们就开始去初步了解数据库和表,以及创建一个数据库和向MySQL里面导入数据. 一.初步了解数据库创建一个数据库 1 ...
最新文章
- JSP中的重定向和请求转发以及它们的区别
- 湖南科技学院计算机科学与技术分数,湖南科技学院计算机科学与技术专业2016年在河南理科高考录取最低分数线...
- 远程办公项目团队如何进行团队协作?
- 人脸识别技术突飞猛进 为应用领域拓展奠定基础
- openFileDialog 打开TXT记事本文件写入数据库
- 大厂实习生面试常问的一道算法题,LeetCode11 题目解析
- leetcode 1306. Jump Game III | 1306. 跳跃游戏 III(BFS)
- java阴阳师抽卡概率_《阴阳师》公布抽卡概率!看到数字我哭了
- 大数据平台网站日志分析系统
- java调用webservice_Oracle触发器调用webservice说明
- A 洛谷 P3601 签到题 [欧拉函数 质因子分解]
- python罗马数字转换阿拉伯数字_罗马数字与阿拉伯数字转换
- Linux共享后无权限访问,Samba服务无权限访问
- 【190320】VC 视频捕捉与网络传输源代码
- 苹果账号申请流程——99刀(个人版或公司版 ),299刀(企业版)
- 根本原因分析(RCA)
- 图像分割之常用损失函数-Focal Loss
- STM8L 设置输入模式读取PIN脚高低电平就是个坑
- Oracle enterprise manager 13C 安装无法正常进行
- 阿里腾讯还做不到,这30%的市场,雷军眼光更胜一筹!
热门文章
- 2020年中级数据库工程师考试笔记1—计算机系统知识
- STM32机器学习开发实战
- Navicat Premium 注册机的使用流程(PATCH)很重要,需要找到Navicat Premium 12的文件夹中的Navicat Premiume.e执行文件
- PEEK工程塑料微小深孔钻孔加工难点及加工工艺
- 基于纯真本地数据库的 IP 地址查询 PHP 源码
- 路由协议与交换技术——OSPF
- 黄山行---2009
- Sublime | 强大的Sublime编辑器
- Shell脚本编写计算器代码
- win7高级启动选项:_使您的手机游戏成功。 第二部分:高级选项