Mysql 基本命令2

Posted 偶像java练习生

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mysql 基本命令2相关的知识,希望对你有一定的参考价值。

创建数据表

1.通过sql 命令创建表

-- 字符串使用单引号
-- 所有的语句后面加,(英文的), 最后一个不用加
-- id 列自增为空
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 '出生日期',  
    `address`  VARCHAR(100) DEFAULT NULL COMMENT '家庭住址',
    `email` VARCHAR(50) DEFAULT NULL COMMENT '邮箱',
    PRIMARY KEY  (`id`)
)ENGINE=INNODB DEFAULT CHARSET =utf8

格式:

在这里插入图片描述
对于现在数据库创建表,我好久都没用命令去写了,直接可视化去创建,效率比较高

SHOW CREATE DATABASE test; -- 查看数据库名为test 的sql
SHOW CREATE TABLE school; -- 查看表为school 的sql
DESC student; -- 查看表的结构

在这里插入图片描述

数据表的类型

关于mysql 数据引擎
INNODB 默认使用
MYISAM 早些年使用的

项目MYISAMINNODB
事务支持不支持支持
数据行锁定不锁定,表锁支持
外键约束不支持支持
全文索引支持不支持
表空间大小较小较大,约等于2 倍

常规的使用操作:
·MYISAM 节约空间,速度较快
·INNODB 安全性,事务的处理,多表多用户操作

在物理空间存在的位置

所有的数据库文件都存在data 目录下
本质还是文件的存储!如下图:
在这里插入图片描述

MYSQL 引擎在屋里文件的区别
·INNODB 在数据库表中只有一个*.frm 文件,以及上级目录下的ibdata1 文件
在这里插入图片描述

·MYISAM 对应文件
1. *.frm -表结构文件
2. *.MYD 数据文件(data)
3. *.MYI 索引文件(index)
在这里插入图片描述

设置数据库表的字符集编码

1 CHARSET=utf8

不设置的话,会是mysql 默认的字符集编码-(不支持中文)
MYSQL 的默认编码是Latin,不支持中文
在my.ini 中配置默认的编码

character-set-server=utf-8
在这里插入图片描述
设置后,默认为中文了!

修改删除表

修改

ALTER TABLE school RENAME AS school1  -- 修改表名,旧表变新表
ALTER TABLE school1 ADD height INT(11)  -- 给表添加字段
ALTER TABLE school1 MODIFY height VARCHAR(11) -- 修改数据类型,但是不能重命名
ALTER TABLE school1 CHANGE age age1 INT(1)  -- 重命名,但是不能修改数据类型

– 删除表的字段

ALTER TABLE school1 DROP height

其实以上命令都可以通过界面话修改!比较容易

MYSQL 数据管理

  1. 外键(了解即可)
    在这里插入图片描述
    在这里插入图片描述

在我的开发经验中这个用的不多,因为删出数据的时候很麻烦

  1. DML 语言(全部记住)
    insert
    delete
    update

  2. 插入

  3. 修改

  4. 删除

这些网上都能看到,我就不想讲了!

以上是关于Mysql 基本命令2的主要内容,如果未能解决你的问题,请参考以下文章

MySQL系列:kafka停止命令

连接MySQL出现错误:ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES)(代码片段

VSCode自定义代码片段——git命令操作一个完整流程

VSCode自定义代码片段——cli的终端命令大全

VSCode自定义代码片段4——cli的终端命令大全

VSCode自定义代码片段15——git命令操作一个完整流程