MySQL基础语法【库、表的增删改查】

1.链接与断开

链接:mysql -h127.0.0.1 -P3306 -uroot -proot

-h 主机地址 -P 端口号
-u 用户名 -p 用户密码

断开:

  • 1.exit;
  • 2.quit;
  • 3.\q;
2.数据库
2.1、 显示:show databases;

1、information_schema
保存着关于MySQL服务器所维护的所有其他数据库的信息。 如数据库名,数据库的表,表栏的数据类型与访问权限等。一般不会修改这个库
2、mysql
MySQL的系统数据库, 保存了登录用户名,密码,以及每个用户的权限等等。一般不会修改这个库
3、performance_schema
保存数据库服务器性能的参数。有可能会修改这个库
4、sys
通过视图的形式把information_schema和performance_schema结合起来,查询出更加令人容易理解的数据

2.2、查看数据库全局默认的编码

show variables like ‘character_set_%’;

2.3、创建:

create database [if not exists] 数据库名称 [charset=字符集];

2.4、删除:

drop database [if exists] 数据库名称;

2.5、修改:只能修改字符集

alter database 数据库名称 charset=字符集;

2.6、查看:

查看所有库:show databases;
查看单个库及字符集:show create database 数据库名称;

3、表
3.1、创建表:

1.use 数据库名称; 进入数据库
2.show tables; 查看数据库中有哪些表
3.创建表
create table 表名(
字段名称 数据类型,
字段名称 数据类型,
);

3.2、删除表:

drop table [if exists] 表名;

3.3、修改

1)、修改表名:
rename table 原始名称 to 新的名称;
2)、添加字段:
alter table 表名 add 新增字段名称 新增字段数据类型 [位置];
示例1: alter table person add age int;

  • 注意点:默认情况下会将新增的字段放到原有字段的后面

示例2:alter table person add score float first;

  • 注意点:我们可以通过指定first将新增的字段放到原有字段的前面

示例3:alter table person add phone int after name;

  • 注意点:我们可以通过after指定将新增的字段放到哪个字段的后面。

3)、删除字段:
alter table 表名 drop 字段名称;
4)、修改字段:
1.修改字段的数据类型
alter table 表名 modify 需要修改的字段名称 新的数据类型
2.修改字段的名称和数据类型
alter table 表名 change 原始字段名称 新的字段名称 新的数据结构

3.4、查看表:

1.use 数据库名称; 进入数据库
2.show tables; 查看数据库中有哪些表

3.5、存储引擎:
  • MyISAM: 安全性低, 不支持事务和外键, 适合频繁插入和查询的应用【.sdi文件保存表结构; .MYD文件保存表数据; .MYI文件保存表索引】
  • InnoDB(默认存储引擎): 安全性高, 支持事务和外键, 适合对安全性, 数据完整性要求较高的应用【.ibd文件保存表结构,ibdata1文件保存表数据】
  • Memory: 访问速度极快, 但不会永久存储数据, 适合对读写速度要求较高的应用【.sdi文件保存表结构,表数据在内存中】

修改表的存储引擎:
alter table 表名 engine=引擎名称;

4、数据
4.1、新增/插入:

insert into 表名 (字段名称1, 字段名称2) values (值1, 值2), (值1, 值2);

4.2、删除:

delete from 表名 [where 条件]

4.3、修改/更新:

update 表名 set 字段名称=值 [where 条件]
【如果在更新数据的时候没有指定条件,那么就会更新整张表中的指定字段的数据。】
实例:

       update stu set score = 88 where name = 'gege4';(只会更新满足条件的数据)
       update stu set score = 100 where name = 'gege1' AND id=2;(逻辑与)
       pdate stu set score = 110 where name = 'gege5' OR name ='gege6';(逻辑或)
       update stu set name='jj', score=20 where id=5;(修改多个字段)
4.4、查询:

select 字段名称1, 字段名称2 from 表名 [where 条件];

5、其他
5.1、where支持的运算符

1、=(等于)、!=(不等于)、<>(不等于)、<(小于)、<=(小于等于)、>(大于)、>=(大于等于);
2、IN(set);固定的范围值
3、BETWEEN…AND;值在什么范围
4、IS NULL;(为空) IS NOT NULL(不为空)
5、AND;与; —— OR;或; —— NOT;非; —— LIKE: 模糊查询

5.2、数据类型:
  • 整型类型
    TINYINT 1 字节 (-128,127) (0,255) 小整数值
    SMALLINT 2 字节 (-32 768,32 767) (0,65 535) 大整数值
    MEDIUMINT 3 字节 (-8 388 608,8 388 607) (0,16 777 215) 大整数值
    INT或INTEGER 4 字节 (-2 147 483 648,2 147 483 647) (0,4 294 967 295) 大整数值
    BIGINT 8 字节 (-9,223,372,036,854,775,808,9 223 372 036 854 775 807) (0,18 446 744 073 709 551 615) 极大整数值
  • 浮点类型
    FLOAT(m, d) 4 字节 单精度
    DOUBLE(m, d) 8 字节 双精度
    m总位数, d小数位数
  • 定点类型
    也是用于存储小数的,存储的比浮点类型精确
    decimal(M, D)
    是将数据分为两个部分来存储【整数、小数部分分开存储】, 每个部分都是整数。
    所以定点数不要滥用, 因为非常消耗资源
  • 字符类型
    CHAR(size) 0-255 字节 定长字符串
    VARCHAR(size) 0-65535字节 变长字符串
  • 文本类型
    TINYTEXT 0-255字节 短文本字符串
    > TEXT 0-65535字节 长文本数据
    > MEDIUMTEXT 0-16777215字节 中等长度文本数据
    > LONGTEXT 0-4294967295字节 极大文本数据
  • 枚举类型
    和其它编程语言一样, 如果某个字段的取值只能是几个固定值中的一个, 那么就可以使用枚举
    enum(值1, 值2, …);
  • 集合类型
    和编程开发中一样, 如果某个字段的取值只能是几个固定值中的几个【枚举是几个固定值中的一个】, 那么就可以使用集合类型
    set(值1, 值2, …)
  • 日期类型
    DATE 3字节 YYYY-MM-DD 日期值
    TIME 3字节 HH:MM:SS 时间值或持续时间
    DATETIME 8字节 YYYY-MM-DD HH:MM:SS 混合日期和时间值
  • 布尔类型
    boolean
    在这里插入图片描述
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值