栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Day03 狂神说Java-MySQL>P10-P14

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Day03 狂神说Java-MySQL>P10-P14

P10 MyISAM和InnoDB区别
SHOW CREATE DATABASE school -- 查看创建数据库的语句
SHOW CREATE TABLE student -- 查看student数据表的定义语句
DESC student -- 显示表的结构

P11 修改和删除数据表字段
-- 修改表
ALTER TABLE teacher RENAME AS teacher1
-- 增加字段
ALTER TABLE teacher1 ADD age INT(11)
-- 修改表字段
ALTER TABLE teacher1 MODIFY age VARCHAr(11)
ALTER TABLE teacher1 CHANGE age age1 INT(1)
-- 删除表字段
ALTER TABLE teacher1 DROP age1
-- 删除表
DROP TABLE IF EXISTS teacher1
-- 注意点
-- 1.字段名使用``
-- 2.注释
-- 3.关键字大小写不敏感,建议小写
-- 4.所有符号用英文
P12 数据库级别的外键

外键–DML语言-增删改查

-- 方式一
CREATE TABLE `grade`(
  `gradeid` INT(10) NOT NULL AUTO_INCREMENT COMMENT '年级id',
  `gradename` VARCHAr(50) NOT NULL COMMENT '年级名称',
  PRIMARY KEY (`gradeid`)
)ENGINE=INNODB DEFAULT CHARSET=utf8
-- 定义外键key
-- 给外键添加约束
CREATE TABLE IF NOT EXISTS `student`(
   `id` INT(4) NOT NULL AUTO_INCREMENT COMMENT '学号',
   `name` VARCHAr(30) NOT NULL DEFAULT '匿名' COMMENT '姓名',
   `pwd` VARCHAr(20) NOT NULL DEFAULT '123456' COMMENT '密码',
   `sex` VARCHAr(2) NOT NULL DEFAULT '女' COMMENT '性别',
   `birthday` DATETIME DEFAULT NULL COMMENT '出生日期',
   `gradeid` INT(10) NOT NULL COMMENT '学生的年级',
   `address` VARCHAr(100) DEFAULT NULL COMMENT '家庭住址',
   `email` VARCHAr(50) DEFAULT NULL COMMENT '邮箱',
   PRIMARY KEY(`id`),
   KEY `FK_gradeid` (`gradeid`),
   CONSTRAINT `FK_gradeid` FOREIGN KEY (`gradeid`) REFERENCES `grade`(`gradeid`)
)ENGINE=INNODB DEFAULT CHARSET=utf8

-- 方式二
CREATE TABLE `grade`(
  `gradeid` INT(10) NOT NULL AUTO_INCREMENT COMMENT '年级id',
  `gradename` VARCHAr(50) NOT NULL COMMENT '年级名称',
  PRIMARY KEY (`gradeid`)
)ENGINE=INNODB DEFAULT CHARSET=utf8
-- 定义外键key
-- 给外键添加约束
CREATE TABLE IF NOT EXISTS `student`(
   `id` INT(4) NOT NULL AUTO_INCREMENT COMMENT '学号',
   `name` VARCHAr(30) NOT NULL DEFAULT '匿名' COMMENT '姓名',
   `pwd` VARCHAr(20) NOT NULL DEFAULT '123456' COMMENT '密码',
   `sex` VARCHAr(2) NOT NULL DEFAULT '女' COMMENT '性别',
   `birthday` DATETIME DEFAULT NULL COMMENT '出生日期',
   `gradeid` INT(10) NOT NULL COMMENT '学生的年级',
   `address` VARCHAr(100) DEFAULT NULL COMMENT '家庭住址',
   `email` VARCHAr(50) DEFAULT NULL COMMENT '邮箱',
   PRIMARY KEY(`id`)
)ENGINE=INNODB DEFAULT CHARSET=utf8

-- 创建表的时候没有外键关系
ALTER TABLE `student`
ADD CONSTRAINT `FK_gradeid` FOREIGN KEY(`gradeid`) REFERENCES `grade`(gradeid);

以上操作都是物理外键,数据库级别的外键,我们不建议使用

数据库应该就是单纯的表,只用来存数据,只有行列

想使用多张表的数据,使用外键,这里我们使用程序使用

P13 Insert语句详解
-- 插入语句
INSERT INTO `grade`(`gradename`) VALUES('大四')
-- 由于主键自增,我们可以省略。如果不写表字段,就会自动一一匹配
INSERT INTO `grade` VALUES('大四')
-- 插入多个字段
INSERT INTO `grade`(`gradename`) VALUES('大二'),('大一')

INSERT INTO `student`(`name`) VALUES ('张三')

INSERT INTO `student`(`name`,`pwd`,`sex`) VALUES ('张三','1234567','男'),('李四','1234567','男')
P14 update语句详解
-- 修改学员名字
UPDATE `student` SET `name`='狂神' WHERe id = 1;
-- 不指定条件,会改动所有表
UPDATE `student` SET `name`='狂神';
-- 修改多个属性
UPDATE `student` SET `name`='狂神',`email`='1234@qq.com' WHERe id = 1;

UPDATE `student` SET `name`='狂神',`email`='1234@qq.com' WHERe `name`='狂神' and sex='女';
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/936401.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号