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 早些年使用的
项目 | MYISAM | INNODB |
---|---|---|
事务支持 | 不支持 | 支持 |
数据行锁定 | 不锁定,表锁 | 支持 |
外键约束 | 不支持 | 支持 |
全文索引 | 支持 | 不支持 |
表空间大小 | 较小 | 较大,约等于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 数据管理
- 外键(了解即可)
在我的开发经验中这个用的不多,因为删出数据的时候很麻烦
-
DML 语言(全部记住)
insert
delete
update
-
插入
-
修改
-
删除
这些网上都能看到,我就不想讲了!
以上是关于Mysql 基本命令2的主要内容,如果未能解决你的问题,请参考以下文章
连接MySQL出现错误:ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES)(代码片段