首页 > 数据库 >MySQL增删改查的基本命令

MySQL增删改查的基本命令

时间:2023-09-06 22:55:06浏览次数:39  
标签:存储 int create 改查 t1 MySQL 增删 table id

1. 数据库相关命令

1. 查看所有的数据库
show databases;

2. 查看一个库的基本信息
show create database db1;

3. 创建一个数据库
create database db1;

4. 删除一个数据库
drop database db1;

5. 修改库的字符编码
alter database charset='utf8';

2. 表相关命令

1. 创建一个表
create table t1(id int(11),name varchar(16),age int(11));

# id,name,age 代表的是字段 后面代表的是字段类型

2. 删除一个表
drop table t2;

3. 修改表  只能修改表名
alter table t1 rename tt1;

4. 查看表
show tables;  # 查看所有表
show crtate table t1;     # 查看表结构
desc t1;                 # 查看表的字段

                    

3. 字段的增删改查

select、# 查看
insert、# 插入一条记录
update、# 更新一条或多条记录
delete     删除一条或多条记录

1. 查看表这的记录
select * from t1;    # * 代表的是全部字段 如果写字段名 则代表看某个字段
select id,name from t1;  # 查看t1这张表的 id 和 name 字段

2. 增加数据
insert into t1 values(1,'huang',18); # 不指定字段 则是按顺序添加
insert into t1(id,name,age) values(2,'tank',20),(3,'shun',19);  # 一次性添加多个

3. 修改数据
update t1 set name='kevin' where id=3;  # name代表字段 where代表条件
可以同时修改几个字段
update t1 set id=5,name='kevin',age=88 where id=3 and name='shun'   # where 可以同时筛选几个条件 那个条件成立 就直接执行
update t1 set name='aaa'; # 没有筛选条件则是 全表改,一定不能使用
    '''以后你在写更新语句的时候,一定别忘了检测更新条件'''
    """以后可千万要有安全意识,尤其是对公司里的核心数据,数据对一个公司太重要了"""

4. 删除数据 
delete from t1 where id =1;
delete from t1 where id =1 and name='';  # 可以筛选条件

4. 存储引擎(存储数据的方式)

1. 什么是存储引擎?
    # 就是存储数据的方式!

2. MySQL中有哪些存储数据的方式:
    show engines;  数据库查看存储引擎信息

# 总共支持9中存储引擎,我们需要掌握2种:
"""
MyISAM:
    它是MySQL5.5及之前的版本默认的存储引擎,它的存取速度更快,但是数据相对InnoDB不够安全。

InnoDB
    它是MySQL5.6及之前的版本默认的存储引擎,它的存取速度相对MyISAM更慢了,但是数据相对MyISAM更加安全

MEMORY
    它的数据是在内存中存着的,内存是基于电工作的,所以断电数据丢失,重启服务端也会丢失数据
"""

# 验证以上三者存储引擎所产生的文件
create table t2(id int) engine=MyISAM;
create table t3(id int) engine=InnoDB;
create table t4(id int) engine=MEMORY;

1. 
MyISAM:
    # 产生三个文件
    .frm: 这个文件存表结构
    .MYD:这个文件存数据 data
    .MYI: 这个文件存数据的索引 index >>> 类似于是书的目录 >>> 加快查询速度的

2.
InnoDB        
    # 产生两个文件
    .frm: 这个文件存表结构
    .ibd: 这个文件存数据的索引和数据 index >>> 类似于是书的目录 >>> 加快查询速度的

3.
MEMORY
    # 产生两个文件
    .frm: 这个文件存表结构

5. 数据类型有五种

1. 整形 有四种 int tinyint bigint  smallint
# 不同的类型存储的范围不一样
存储范围比较:
tinyint:1个字节------>8位------>2 **8----> 256----->0-255----->-128-127
smallint:2个字节存储----->16位---->2 ** 16 ----> 65536----->0-65535---->-32768-32767
int:4个字节------>32位----->2 ** 32----> 21...---->
bigint:8个字节----->64为----->2 ** 64---->

# 默认情况整型是否带符号
create table t5 (id tinyint);
create table t5 (id smallint);
create table t5 (id int);
create table t5 (id bigint);
"""得出结论:默认情况整型是带符号的"""

2. 浮点型 有三种 float  double  decimal

float(255, 30);  # 255表示的是存储的位数,30代表的是小数位数
double(255,30);  # 255表示的是存储的位数,30代表的是小数位数
decimal(65, 30); # 65表示的是存储的位数,30代表的是小数位数

decimal(8, 2) # 表示的最大范围是:999999.99  8代表一共可以存8位 小数是两位 6位整形跟2位小数

# 这三个有什么区别? """得出结论:精确度不一样"""
decimal  >>> double >>> float
create table t6(id float(255, 30));
create table t7(id double(255, 30));
create table t8(id decimal(65, 30)

3. 字符串类型 有两种 char varchar
# 这两个都是用来存储字符串使用的
char(4):   它是定长,那么他就存4位,如果没有超出4位,空格填充到4位,超出4位,报错或者,最大存4位

varchar(4):可变长的,不超出4位,有几位存几位,超出4位,报错或者,最大存4位

# 如果你想让报错,需要设置严格模式
如何查看严格模式
    1. select @@sql_mode;
    2. show variables like '%mode%' # 模糊查询,变量中带有mode的

# 设置严格模式
    1. 永久修改:需要改配置文件
    2. 临时修改:
    set global         sql_mode='STRICT_TRANS_TABLES,PAD_CHAR_TO_FULL_LENGTH';

# 以后到底使用定长还是不定长呢,
大多数情况使用的都是varchar,如果你的存储数据就是固定的,就是有char


4. 日期类型有4种
    datetime      date      time      year
    年月日 时分秒   年月日    时分秒     年份 



5. 枚举类型  enum
    1.多选一
create table t15 (id int,
                         hobby enum('tangtou', 'hejiu', 'xijio', 'chouyan')
                         );
insert into t15 values(1, 'tangtou');  # 只能从枚举里面选择 否则报错

    2. 多选多
create table t16 (id int,
                         hobby set('tangtou', 'hejiu', 'xijio', 'chouyan')
                      );

insert into t15 values(1, 'tangtou','hejiu', 'xijio'); 

    

6. 整型中的数字代表的什么意思

字符串类型:
    char(4)
    varchar(4) # 括号里的数字代表的就是存储的长度

整形 
int
tinyiny
smallint
# 整型的存储范围跟括号中的数字有没有关系:
# 整型中括号中的数字代表的是数据展示的位数

7. 创建表的完整语法结构

create table 表名(
    字段名1  数据类型  约束条件 约束条件 约束条件,
        字段名2  数据类型  约束条件 约束条件 约束条件
    ...
);

create table t17 (
    id int,
    name varchar(16),
    age int
);

# 注意事项:
1. 字段名和数据类型是必须要写的
2. 约束条件是可选的,有就写,没有不写
3. 最后一个字段的末尾不能加逗号

 

标签:存储,int,create,改查,t1,MySQL,增删,table,id
From: https://www.cnblogs.com/lchengshao/p/17683403.html

相关文章

  • mysql集合查询
    统计一个班级共有多少学生?selectcount(*)ASnumsfromstudent;统计数学成绩大于90分的学生有多少个?selectcount(*)ASnumsfromstudentwheremath>=90;统计总分大于250分的人数有多少?selectcount(*)ASnumsfromstudentwhere(math+chinese+englist)>250;查看表的创建......
  • mysql修改初始密码详细步骤
    1、查看mysql的初始密码grep'temporarypassword'/var/log/mysqld.log得到的初始密码为:IGj)aTe#g4:(2、进入到mysql里面mysql-uroot-p3、设置密码强度和长度的限制setglobalvalidate_password_policy=LOW;setglobalvalidate_password_length=6;4、修改密......
  • mysql将id重新修改为递增
    场景好比我有个配置表:CREATETABLE`config`(`id`intNOTNULLAUTO_INCREMENT,`config_key`varchar(20)NOTNULL,`config_value`varchar(500)NOTNULL,`modified_time`datetimeNOTNULLDEFAULTCURRENT_TIMESTAMPONUPDATECURRENT_TIMESTAMP,`crea......
  • 如何在MySQL中对键值对表中的重复行进行多列排序?
    要在MySQL中对键值对表中的重复行进行多列排序,可以使用ORDERBY子句并指定多个列作为排序条件。以下是一个示例:假设有一个键值对表key_value,包含以下列:key_id、key_name、value。要对key_value表中的重复行按key_id和value进行排序,可以使用如下的SQL查询语句:SELECTkey_id,key_nam......
  • MySQL整体架构简介
    MySQL是一个开源的关系型数据库管理系统(RDBMS)它的整体架构可以分为以下几个主要组件和层级:客户端层(ClientLayer)与MySQL交互的最顶层,如我们经常使用的MySql客户端工具,代表了客户端层。客户端通过TCP/IP协议与MySQL服务器进行通信,可以执行查询、更新数据等操作。MySQL......
  • 软件测试|MySQL SELECT语句的详细使用
    简介MySQL是一种广泛使用的开源关系型数据库管理系统,它提供了许多功能强大的SQL查询语句,其中最常用且最重要的是SELECT语句。SELECT语句用于从数据库表中检索数据,并根据给定的条件返回所需的结果集。在本文中,我们将深入探讨MySQLSELECT语句的各个方面,并提供一些示例来说明其用法。......
  • 软件测试|MySQL DISTINCT关键字过滤重复数据
    简介在MySQL中,有时候我们需要从表中检索唯一的、不重复的数据。这时,我们可以使用DISTINCT关键字来过滤掉重复的数据行。在本文中,我们将深入探讨MySQL中DISTINCT的用法以及如何在查询中使用它来得到不重复的结果集。基本语法DISTINCT关键字用于在SELECT语句中指示查询结果中去除重复......
  • 编写涉及多个数据库的 MySQL 存储过程注意事项
    在编写涉及多个数据库的MySQL存储过程时,有一些注意事项需要考虑。以下是一些重要的注意事项:数据库权限:确保您在存储过程中使用的数据库用户具有足够的权限来访问和操作涉及的所有数据库。这包括对表、视图、存储过程等对象的读取和写入权限。数据库连接:在存储过程中,您可能......
  • DBeaver转储数据库数据报错解决(即免安数据库提取mysqldump.exe)
    原因:DBeaver转储数据功能使用的是mysqldump.exe这个工具,本机安装的是mysql5.7,而需要导出的数据库是MariaDB10.5.16,应该对应mysql8,导致出错解决方法:当然是换新版本的mysqldump,但是这有个问题,只是为了导出,新装一个数据库实属没有必要,有文章说从MySQL下载他官方的连接工......
  • mysql常见问题
    1 ERROR2059(HY000):Authenticationplugin'caching_sha2_password'cannotbeloaded: linux上连接docker上面的mysql,安装客户端:sudoyuminstallmysql设置环境变量:exportPATH=$PATH:/path/to/mysql/bin使用root用户登录ALTERUSER'your_username'IDENTIFIED......