文章目录
mysql数据库指令
查看引擎修改引擎
- 存储引擎查看:mysql> show engines;
2.修改搜索引擎 ALTER TABLE 表名 ENGINE=引擎;
mysql> alter table m1 engine=MyISAM;
3;看你的mysql当前默认的存储引擎:
mysql> show variables like ‘%storage_engine%’;
4;如何查看Mysql服务器上的版本
mysql> select version();
5;创建指定引擎
create table t1(id int,manager char(10)) engine =innodb;
6;怎么查看表创建过程,显示引擎
mysql> show create table m1;
创建库
1.创建库 mysql> create database 库名;
2.查看数据库 mysql> show databases;
3.进入数据库 mysql> use 库名
4.查看当前所在的库 mysql> select database();
5.查看当前库下所有的表格 mysql> show tables;
创建表
语法:
create table 表名(
字段名1 类型[(宽度) 约束条件],
字段名2 类型[(宽度) 约束条件],
字段名3 类型[(宽度) 约束条件]
)[存储引擎 字符集];
==在同一张表中,字段名是不能相同
==宽度和约束条件可选
==字段名和类型是必须的
2.查看有哪些表 mysql> show tables;
3.查看表结构: mysql> desc t1;
4.查看表里面的所有记录:
语法: select 内容 from 表名; mysql> select * from t1; *:代表所有内容
5.查看表里面的指定字段:
语法:select 字段,字段 from 表名; mysql> select name,sex from t1;
6.查看表的状态
mysql> show table status like ‘表名’\G —每条SQL语句会以分号结尾,想看的清楚一些以\G结尾,一条记录一条记录显示。(把表90度向左反转,第一列显示字段,第二列显示记录)使用的\G就不用添加分号了
案例:
create table t1(id int,name varchar(20),age int);
字段 类型 字段 类型(长度),字段 类型
mysql> create table t1(id int,name varchar(50),sex enum(‘m’,‘f’),age int);
步骤:创建表
create table 表名 创建表
create table t2(
-> id int, 字段 类型
-> name varchar(20), 字段 类型
-> sex enum(‘man’,‘woman’), enum 表示只可选取一个
-> age int); 字段 类型
案例:查找表信息
修改表名称
7.修改表名称
方式一、语法:rename table 旧表名 to 新表名;
mysql> rename table t1 to t2;
方式二、语法:alter table 旧表名 rename 新表名;
mysql> alter table t2 rename t3;
8.使用edit(\e)编辑------了解 sql语句较长的时候使用
mysql> \e #可以写新的语句,调用的vim编辑器,在里面结尾的时候不加分号,保存退出之后在加“;”
-> ;
删除库,表
9.删除表
mysql> drop table 表名;
10.删除库
mysql> drop database 库名;
数据类型 整形
在MySQL数据库管理系统中,可以通过存储引擎来决定表的类型。同时,MySQL数据库管理系统也
提供了数据类型决定表存储数据的类型。
1.整型
作用:用于存储用户的年龄、游戏的Level、经验值等。
分类:tinyint smallint mediumint int bigint
常用的是int
显示宽度:类型后面小括号内的数字是显示的最小宽度,并不能限制插入数值的长度
比如:bigint(2) 2是显示宽度
取值范围:
MySQL数据类型 | 最小值 | 最大值 |
---|---|---|
tinyint(n) | -128 | 127 |
smallint(n) | -32,768 | 32,767 |
mediumint(n) | -8388608 | 8388607 |
int(n) | -2,147,483,648 | 2,147,483,647 |
bigint(n) | -9,223,372,036,854,775,808 | 9,223,372,036,854,7 |
结论:
- 当整数值超过 int 数据类型支持的范围时,就可以采用 bigint。
- 在 MySQL 中,int 数据类型是主要的整数数据类型。
- int(n)里的n是表示SELECT查询结果集中的显示宽度,并不影响实际的取值范围,没有影响到显示的宽度
插入 整形
案例:
mysql> insert into t2(age) values(32767); 插入固定语法
Query OK, 1 row affected (0.00 sec)
mysql> select * from t2; 查找这个表里的所有信息
±-----±-----±------+
| id | name | age |
±-----±-----±------+
| NULL | NULL | 32767 |
±-----±-----±------+
1 row in set (0.00 sec)
数据类型 浮点型 float
2.浮点数类型 FLOAT DOUBLE
作用:用于存储用户的身高、体重、薪水等
float(5,3) #一共5位,整数占3位.做了限制
mysql> create table t7(float_test float(5,2)); #案例 宽度不算小数点
mysql> desc t7;
±-----------±-----------±-----±----±--------±------+
| Field | Type | Null | Key | Default | Extra |
±-----------±-----------±-----±----±--------±------+
| float_test | float(5,2) | YES | | NULL | |
±-----------±-----------±-----±----±--------±------+
1 row in set (0.00 sec)
mysql> insert into test4(float_test) values(123.345534354); 往这个表格插入内容
Query OK, 1 row affected (0.01 sec)
步骤:mysql> select * from t7; 查看表格里面的所有内容
±-----------+
| float_test |
±-----------+
| 123.27 |
±-----------+
案例;
创建一个浮点型 表格在这里插入图片描述
查看表信息 以及插入一个值
时间类型
时间和日期类型测试:year、date、time、datetime、
作用:用于存储用户的注册时间,文章的发布时间,文章的更新时间,员工的入职时间等
注意事项:
==插入年份时,尽量使用4位值
==插入两位年份时,<=69,以20开头,比如65, 结果2065
>=70,以19开头,比如82,结果1982
案例:
mysql> create table g4(nian date,yue time,ri datetime); 创建时间类型 表
Query OK, 0 rows affected (0.01 sec)
mysql> desc g4 查看表结构
-> ;
±------±---------±-----±----±--------±------+
| Field | Type | Null | Key | Default | Extra |
±------±---------±-----±----±--------±------+
| nian | date | YES | | NULL | |
| yue | time | YES | | NULL | |
| ri | datetime | YES | | NULL | |
±------±---------±-----±----±--------±------+
3 rows in set (0.00 sec)
插入表结构 内容
案例;
mysql> insert into g4 values(now(),now(),now());
Query OK, 1 row affected, 1 warning (0.00 sec)
mysql> select * from g4;
±-----------±---------±--------------------+
| nian | yue | ri |
±-----------±---------±--------------------+
| 2021-08-30 | 16:04:46 | 2021-08-30 16:04:46 |
±-----------±---------±--------------------+
1 row in set (0.00 sec)
测试年:案例
mysql> create table g5(nian year); 创建一个 年类型的 表
Query OK, 0 rows affected (0.02 sec)
mysql> desc g5; 查看表结构
±------±--------±-----±----±--------±------+
| Field | Type | Null | Key | Default | Extra |
±------±--------±-----±----±--------±------+
| nian | year(4) | YES | | NULL | |
±------±--------±-----±----±--------±------+
1 row in set (0.00 sec)
mysql> insert into g5 values(2019); 往表里插入内容 一般都是4位 职业化
Query OK, 1 row affected (0.00 sec)
mysql> select * from g5; 查看表里所有数据
±-----+
| nian |
±-----+
| 2019 |
±-----+
1 row in set (0.00 sec)
枚举类型 enum
4.枚举类型 enum
mysql> create table g3(name enum(‘mm’,‘gg’));
Query OK, 0 rows affected (0.00 sec)
只能从mm,gg两个里面2选其1
(enumeration)
有限制的时候用枚举
案例:
mysql> insert into g3(name) values(‘mm’);
Query OK, 1 row affected (0.00 sec) 正确的
mysql> insert into g3(name) values(‘gg’);
Query OK, 1 row affected (0.00 sec) 正确的
mysql> insert into g3 values(‘n’); 错误的
ERROR 1265 (01000): Data truncated for column ‘sex’ at row 1