1 数据库
- 相关操作
-- 创建数据库 CREATE DATABASE IF NOT EXISTS TE; -- 删除数据库 DROP DATABASE IF EXISTS TE; -- 使用数据库 use `test`; -- 查看数据库 show DATABASEs;
2 数据表
2.1 数据类型
1、数值
| 类型 | 用途 | 说明 |
|---|---|---|
| tinyint | 十分小的数据 | 1个字节 |
| smallint | 较小的数据 | 2个字节 |
| mediumint | 中等大小的数据 | 3个字节 |
| int (常用) | 标准的整数 | 4个字节 |
| bigint | 较大的数据 | 8个字节 |
| float | 浮点数 | 4个字节 |
| double | 浮点数 | 8个字节 |
| decimal | 字符串的浮点数 | 金融计算的时候使用 |
2、字符串
| 类型 | 用途 | 说明 |
|---|---|---|
| char | 字符串固定大小的 | 0~255 |
| varchar 常用 | 可变字符串 | 0~65535 |
| tinyint | 微型文本 | 0~2^8-1 |
| text | 文本串(保存较大的文本) | 0~2^16-1 |
3、时间日期
| 类型 | 用途 | 说明 |
|---|---|---|
| date | YYYY-MM-DD | 日期 |
| time | HH:MMM:SS | 时间 |
| datetime 常用 | YYYY-MM-DD HH:MMM:SS | 时期时间 |
| timestamp | 1970 1.1 到现在的毫秒数 全球一致 | 时间戳 |
| year | 年份 |
4、null
- 没有数值 位置
- 使用NULL进行运算 结果为NULL
2.2操作
1、创建表
-- 主键一般写在最后面
-- AUTO_INCREMENT 自增
-- PRIMARY KEY (`id`) 主键
-- NOT NULL 非空
-- DEFAULT '匿名' 默认值
-- COMMENT '学号' 注释
CREATE TABLE `user` (
`id` int(4) NOT NULL AUTO_INCREMENT COMMENT '学号',
`name` varchar(255) NOT NULL DEFAULT '匿名' COMMENT '姓名' ,
`pwd` VARCHAR(255) NOT NULL DEFAULT '123456' COMMENT'密码',
`sex` VARCHAR(255) NOT NULL DEFAULT '男'COMMENT '性别',
`address` VARCHAR(255) DEFAULT NULL COMMENT'地址',
`telephone` VARCHAR(255) DEFAULT NULL COMMENT'手机号',
PRIMARY KEY (`id`)
)ENGINE=INNODB DEFAULT CHARSET=utf8;
-
公式
-- 公式 create table [if not exists]`表名`( `字段名` 类型 [属性] [索引] [注释], `字段名` 类型 [属性] [索引] [注释], `字段名` 类型 [属性] [索引] [注释], `字段名` 类型 [属性] [索引] [注释], ..... )[表类型][字符集设置][注释] -
查看标的结构
mysql> desc user; +-----------+--------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-----------+--------------+------+-----+---------+----------------+ | id | int(4) | NO | PRI | NULL | auto_increment | | name | varchar(255) | NO | | 匿名 | | | pwd | varchar(255) | NO | | 123456 | | | sex | varchar(255) | NO | | 男 | | | address | varchar(255) | YES | | NULL | | | telephone | varchar(255) | YES | | NULL | | +-----------+--------------+------+-----+---------+----------------+ 6 rows in set -
数据表类型
ENGINE=INNODB- 默认使用:innoDB
- 早些年使用:MYISAM
事项 MYISAM INNODB 事务处理 不支持 支持 数据行锁定 不支持 支持 外键约束 不支持 支持 全文索引 支持 不支持 表空间的大小 较小 2倍于 MYISAM 常规操作 节约空间 速度较快 安全性高 支持事务处理 多表多用户操作 -
物理文件存储
- innoDB *.frm 格式 上级目录上的 ibdata1文件
- MYISAM
- *.frm 表结构定义文件
- *.MYD 数据文件
- *.MYI 索引文件
-
字符集编码
DEFAULT CHARSET=utf8;不设置的话 是 默认:Latin1(拉丁文)
可以在my.ini 中默认设置(不建议)
character-set-server=utf8
2、修改表
-- 修改表名 alter tabel old_name rename as new_name
ALTER table js_uesr rename as js_user;
-- 添加字段
alter table js_user add age int(4);
/*
change 用来重命名字段 但是不可以修改字段的类型和约束
modify 不能修改字段的名称 只能修改字段的类型和约束
*/
-- 重命名 changge
ALTER table js_user change age age_1 int(4);
-- 修改约束 modify
alter table js_user modify age_1 varchar(4);
-- 删除表中的字段
alter table js_user drop age_1;
3、删除表
drop table if exists js_user;
- 删除表中的字段
alter table js_user drop age_1;
本文详细介绍了MySQL数据库的操作,包括创建数据库、删除数据库、使用与查看数据库,以及数据表的相关操作。重点讲解了数据类型如int、varchar、date等,并展示了如何创建、修改和删除数据表字段。同时,对比了INNODB和MYISAM两种表引擎的特性,强调了事务处理、数据行锁定和外键约束在数据库管理中的重要性。

被折叠的 条评论
为什么被折叠?



