mysql2基本指令

173 阅读3分钟

MySQL基础操作

常用的数值类型

类型大小用途
char0-255 bytes定义长字符串
varchar0-65535 bytes变长字符串
tinyblob0-255 bytes不超过255个字符的二进制字符串
tinytext0-255 bytes短文本字符串
blob0-65535 bytes二进制形式的长文本数据
text0-65535 bytes长文本数据
mediumblob0-16777215 bytes二进制形式的中等长度文本数据
mediumtext0-16777215 bytes中等长度文本数据
longblob0-4294967295 bytes二进制形式的极大文本数据
longtext0-4294967295 bytes极大文本数据
  • char如果存入数据的实际长度比指定长度要小,会补空格至指定长度,如果存入的数据的实际长度大于指定长度,低版本会被截取,高版本会报错
  • char输入数据的实际长度要比指定长度小,会补空格至指定长度
  • 主键是唯一的,但主键可以由多个字段构成

Snipaste_2022-11-23_10-06-31.png

SQL

SQL语言

  • 关系数据库的标准语言
  • 用于维护管理数据库
    • 包括数据查询、数据更新、访问控制、对象管理等功能

SQL分类

  • DDL:数据定义语言
  • DML:数据操纵语言
  • DQL:数据查询语言
  • DCL:数据控制语言

DDL:数据定义语言

用于创建数据库对象、如库、表、索引等

  • create 创建
  • drop 删除(删除整张表,不保留结构)
  • alter (改变)

操作

[root@localhost ~]# mysql -u root -p
#进入MySQL,记得输入密码

mysql> create database sgr;
#创建一个名字叫sgr的数据库
mysql> use sgr;
#进入sgr数据库中
mysql> show tables;
#查看sgr数据库中的表,表中没有东西,就不会显示出来

CREATE TABLE 表名 (字段1 数据类型,字段2 数据类型[,...][,PRIMARY KEY (主键名)]);
#主键一般选择能代表唯一性的字段不允许取空(NULL),一个表只能有一个主键。
mysql> create table nhy(id int not null,name char(10) not null,score decimal(5.2),password char(20) default' ',PRIMARY KEY (id));
#id、name、score、password:表示创建的字段
#intchardecimal:表示创建的数据类型
#not null:表示不能为空
#10:表示字符串长度
#5.2:表示可以有5个整数,两位小数
#primary key:表示将id设置为主键
#创建表的结构
mysql> desc nhy;
#查看表的结构

#drop可以指定删除表或数据库(一般没人删除数据库),是删除整张表
mysql> drop table ni;

mysql> alter table nhy change password password char(50);
#修改password的字符串长度

image.png

image.png

image.png

image.png

image.png

DML:数据操纵语言

用于对表中的数据进行管理,用来插入、删除和修改数据库中的数据

  • insert 插入
  • update 更新
  • delete 删除(只删除表里面的数据,保留表的结构)

操作

mysql> insert into nhy (id,name,score,password) values(1,'dage',90.5,('123456')); 
#在表中插入数据,
在添加密码时候,密码前面加上password,表示添加的密码为加密的,不加则表示不加密直接显示
mysql> insert into nhy (id,name,score,password) values(2,'erge',80.5,password('123'));

mysql> update nhy set name='xiaodi' where id=2;
#id=2的信息name字段修改成xiaodi

mysql> delete from nhy;
#删除表中的的数据

image.png

image.png

image.png

image.png

image.png

image.png

DQL:数据查询语言

select 查询

操作

mysql> select * from nhy;
#查询nhy表
mysql> select * from nhy where id=2;
#查询nhy表中id=2的信息
mysql> select * from nhy limit 2;
#表示只查看表中前两行的数据
mysql> select * from nhy limit 1,3;
#表示只显示第一行之后的三行

image.png

image.png

image.png

image.png

扩展

在数据表中删除指定的数据记录
mysql> delete from nhy where id=4;
#只删除表里面id=4的数据
删除字段
mysql> alter table nhy drop score;
#删除表中score字段

image.png

image.png

mysql复制命令

mysql> create table tb like nhy;
#将nhy数据结构复制一份到tb里面

image.png

image.png