加入收藏 | 设为首页 | 会员中心 | 我要投稿 财气旺网 - 财气网 (https://www.caiqiwang.com/)- AI开发硬件、专属主机、建站、CDN、云容器引擎!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

MYSQL命令的基本命令

发布时间:2023-05-23 23:05:52 所属栏目:MySql教程 来源:未知
导读: day
1.查看数据库,语法格式 SHOW DATABASES [LIKE '数据库名’];
实例1:查看所有数据库
show databases;

图一
实例2:创建并查看数据库,先创建一个last_name的数据库,create dat

day

1.查看数据库,语法格式 SHOW DATABASES [LIKE '数据库名’];

实例1:查看所有数据库

show databases;

mysql 恢复删除表命令_mysql 命令修改密码_mysql命令

图一

实例2:创建并查看数据库,先创建一个last_name的数据库,create database last_name;在使用show databases进行查看,如下:

create database last_name;
show databases;

mysql 恢复删除表命令_mysql命令_mysql 命令修改密码

图二

实例三:使用 like 从句,使用 like 从句,查看last_name完全匹配的数据库:

show databases like 'last_name';

mysql 恢复删除表命令_mysql命令_mysql 命令修改密码

图三

2)使用 like 从句,查看名字带有name的数据库:

show databases like '%name%';

mysql 命令修改密码_mysql命令_mysql 恢复删除表命令

图4

3)使用 like 从句mysql命令,查看名字以d开头的数据库:

#show databases like 'd%';

mysql 恢复删除表命令_mysql命令_mysql 命令修改密码

图5

4)使用 like 从句,查看名字以name结尾的数据库:

show databases like '%name';

mysql 命令修改密码_mysql命令_mysql 恢复删除表命令

图6

2.创建数据库,语法格式:

create database [if not exists]

[[default] character set ]

[[default] collate ];

[ ]中的内容是可选的。语法说明如下:

实验1,若在此输入 create database last_name;语句,则系统会给出错误信息,如下:

create database last_name;

mysql命令_mysql 恢复删除表命令_mysql 命令修改密码

图7

提示不能创建“last_name”数据库,数据库已存在。可以加上 if not exists从句,就可以避免类似错误,如下:

create database if not exists last_name;

mysql 恢复删除表命令_mysql 命令修改密码_mysql命令

图8

实验2:创建MYSQL数据库时指定字符集和校对规则,使用mysql命令行工具创建一个测试数据库,命名为name_db_char,指定默认字符集utf8,默认校对规则utf8_chinese_ci,输入SQL语句与执行结果如下:

create database if not exists name_db_char
default character set utf8
default collate utf8_general_ci;

mysql命令_mysql 命令修改密码_mysql 恢复删除表命令

3.修改数据库,语法格式:ALTER DATABASE [数据库名] {

[ DEFAULT ] CHARACTER SET |

[ DEFAULT ] COLLATE }

语法说明如下:

实验1,查看last_name数据库的定义声明的执行结果如下:

show create database name_db_char;

mysql命令_mysql 恢复删除表命令_mysql 命令修改密码

使用修改命令,将数据库name_db的指定字符集修改为gb231,默认校对规则修改为gb231_chinese_ci,输入SQL语句如下:

alter database name_db_char  
default character set gb2312 
default collate gb2312_chinese_ci;

mysql 命令修改密码_mysql 恢复删除表命令_mysql命令

4.删除数据库,语法格式:DROP DATABASE [ IF EXISTS ]

语法说明如下:

实验1:删除first_name数据库如下:

drop database first_name;

mysql 命令修改密码_mysql命令_mysql 恢复删除表命令

如果使用 if exists 从句,可以防止系统报此类错误,如下所示:

drop database if exists first_name;

mysql命令_mysql 命令修改密码_mysql 恢复删除表命令

5.选择数据库,语法格式:use

实验1:使用last_name数据库,输入结果如下:

use last_name;

mysql 恢复删除表命令_mysql 命令修改密码_mysql命令

6.1创建数据表,其语法格式为:CREATE TABLE ([表定义选项])[表选项][分区选项];

其中,[表定义选项]的格式为:

[,…]

CREATE TABLE 命令语法比较多,其主要是由表创建定义(create-definition)、表选项(table-options)和分区选项(partition-options)所组成的。

实例1:创建员工表tb_emp1,结构如下表所示。

mysql 恢复删除表命令_mysql命令_mysql 命令修改密码

选择创建表的last_name,创建tb_emp1数据表,输入SQL语句和运行结果如下:

create table tb_emp1(id int(11),name varchar(25),deptid int(11),salary float);
show tables;

mysql命令_mysql 命令修改密码_mysql 恢复删除表命令

6.2 修改数据表,其语法格式:ALTER TABLE [修改选项]

{ ADD COLUMN

| CHANGE COLUMN

| ALTER COLUMN { SET DEFAULT | DROP DEFAULT }

| MODIFY COLUMN

| DROP COLUMN

| RENAME TO

| CHARACTER SET

| COLLATE }

MySQL 通过 ALTER TABLE 语句来实现表名的修改,语法规则如下:

ALTER TABLE RENAME [TO] ;

其中,TO 为可选参数,使用与否均不影响结果。

实验1:将 tb_emp1修改student,结果如下:

alter table tb_emp1 rename to student;
show tables;

mysql 恢复删除表命令_mysql命令_mysql 命令修改密码

mysql 命令修改密码_mysql命令_mysql 恢复删除表命令

修改表字符集,语法规则如下:ALTER TABLE 表名 [DEFAULT] CHARACTER SET [DEFAULT] COLLATE ;

实验2:使用alter table 将数据表student的字符集修改为gb2312,校对规则修改为gb2312_chinese_ci。结果如下:

alter table student character set   gb2312 
default collate gb2312_chinese_ci;
show create table student;

mysql 命令修改密码_mysql 恢复删除表命令_mysql命令

mysql命令_mysql 恢复删除表命令_mysql 命令修改密码

6.3 删除数据表 ,语法格式如下:

DROP TABLE [IF EXISTS] 表名1 [ ,表名2, 表名3 ...]

对语法格式的说明如下:

实例1:选择数据库last_name,创建student_1数据表,输入SQL语句运行结果如下:

use last_name;
create table student_1
(
 id int(11),
 name varchar(25),
 eptid int(11),
 salary float
);

mysql 命令修改密码_mysql命令_mysql 恢复删除表命令

查看如下:

show tables;

mysql命令_mysql 恢复删除表命令_mysql 命令修改密码

我们来删除数据表 student_1,输入sql语句结果如下:

drop table student_1;
show tables;

mysql命令_mysql 命令修改密码_mysql 恢复删除表命令

mysql 恢复删除表命令_mysql 命令修改密码_mysql命令

执行结果可以看到,student_1数据库的数据表中已经不存在student_1的表了,证明删掉了。、

6.4 查看表的结构 DESCRIBE ; 或简写成:DESC ;

实验1:

show tables;
describe student;

mysql命令_mysql 恢复删除表命令_mysql 命令修改密码

实验2:使用 show create table 语句查看表 student的详细信息,结果如下:

show create table student ;

mysql 恢复删除表命令_mysql命令_mysql 命令修改密码

6.5 在mysql数据表中添加字段,语法格式为ALTER TABLE ADD [约束条件];

对语法格式的说明如下:

这种语法格式默认在表的最后位置(最后一列的后面)添加新字段。

注意:本节我们只添加新的字段,不关注它的约束条件。

实验1:在last_name数据库中新建school数据表,结果如下:

use last_name;
create table school( id INT(4),name VARCHAR(20), sex CHAR(1));

mysql 恢复删除表命令_mysql 命令修改密码_mysql命令

使用desc查看student表结构,SQL语句和运行结果如下:

desc student;

mysql命令_mysql 命令修改密码_mysql 恢复删除表命令

使用alter table 语句添加一个INT 类型的字段age,结果如下:

alter table school add age INT(4);

mysql 恢复删除表命令_mysql命令_mysql 命令修改密码

在使用DESC查看school表结构,检验age字段是否添加成功。

DESC school;

mysql 命令修改密码_mysql 恢复删除表命令_mysql命令

在开头添加字段,语法格式如下语法格式如下:

ALTER TABLE ADD [约束条件] FIRST;

FIRST 关键字一般放在语句的末尾。

实验1:使用alter table 语句在表的第一列添加INT 类型的字段stuld,结果如下:

alter table school ADD stuld INT(4)FIRST;
show table shchool;

mysql 恢复删除表命令_mysql命令_mysql 命令修改密码

实验3:使用alter table 语句在student 表中添加名为stuno,数据类型为INT的字段,stuno字段位于name字段的后面,结果如下:

alter table school add stuno INT(11) AFTER name;
desc school;

mysql 命令修改密码_mysql命令_mysql 恢复删除表命令

6.6 数据表查询语句:语法格式如下:SELECT

{* | }

[

FROM , …

[WHERE

[GROUP BY

[HAVING [{ }…]]

[ORDER BY ]

[LIMIT[,] ]

]

实验1:从school表中查询所有字段的数据,结果如下:

mysql 命令修改密码_mysql命令_mysql 恢复删除表命令

实验2:列出表的所有字段,查询school表中所有数据,结果如下:

select stuld,id,name,stuno,sex,age from school;

mysql命令_mysql 命令修改密码_mysql 恢复删除表命令

实验3:查询表中指定的字段,其格式为SELECT < 列名 > FROM < 表名 >;查询student表中的name列所有学生的姓名,结果如下:

select name from student;

mysql 命令修改密码_mysql命令_mysql 恢复删除表命令

实验4:从student表中获取id,name,stuno三列,结果如下:

select id,name,stuno from student;

mysql 恢复删除表命令_mysql命令_mysql 命令修改密码

6.7 插入数据 1) INSERT…VALUES语句

INSERT VALUES 的语法格式为:

INSERT INTO [ [ , … ] ]

VALUES (值1) [… , (值n) ];

语法说明如下。

2) INSERT…SET语句

语法格式为:

INSERT INTO

SET = ,

= ,

此语句用于直接给表中的某些列指定对应的列值,即要插入的数据的列名在 SET 子句中指定,col_name 为指定的列名,等号后面为指定的数据,而对于未指定的列,列值会指定为该列的默认值。

由 INSERT 语句的两种形式可以看出:

在 MySQL 中,用单条 INSERT 语句处理多个插入要比使用多条 INSERT 语句更快。

当使用单条 INSERT 语句插入多行数据的时候,只需要将每行数据用圆括号括起来即可。

实验1:创建一个课程信息表 class,包含课程编码,课程名称,课程学分,和课程备注,结果如下

select * from school;
create table class 
( 
class_id INT NOT NULL AUTO_INCREMENT,
class_name CHAR(40) NOT NULL,
class_grade FLOAT NOT NULL,
class_info CHAR(100) NULL,
PRIMARY KEY(class_id)
);

mysql 命令修改密码_mysql命令_mysql 恢复删除表命令

在class表中插入一条新纪录,class_id值为1,class_name 值为“Network”,class_grade 值为 3,info 值为“Computer Network”。

select * from class;
INSERT INTO class
(class_id,class_name,class_grade,class_info)
VALUES(1,'Network',3,'Computer Network');

mysql 命令修改密码_mysql命令_mysql 恢复删除表命令

实验2:在class表中插入一条记录,class_id值为2,class_name值为“Database”,class_grade值为3,info值为“MYSQL”,结果如下:

INSERT INTO class
(class_name,class_info,class_id,class_grade)
VALUES('Database','MYSQL',2,3);

mysql命令_mysql 恢复删除表命令_mysql 命令修改密码

向表中指定字段添加值,为表的指定字段插入数据,是在 INSERT 语句中只向部分字段中插入值,而其他字段的值为表定义时的默认值。

实验4:在class表中插入一条新纪录,class_name值为“System”,class_grade 值为3,class_info值为“Operating System”,结果如下:

select * from class;
insert into class
(class_name,class_grade,class_info)
values('System',3,'Operation System');

mysql命令_mysql 恢复删除表命令_mysql 命令修改密码

使用 INSERT INTO…FROM 语句复制表数据, SELECT 子句返回的是一个查询到的结果集,INSERT 语句将这个结果集插入指定表中,结果集中的每行数据的字段数、字段的数据类型都必须与被操作的表完全一致。

在数据库 last_name 中创建一个与 tb_class 表结构相同的数据表 tb_class_new,创建表的 SQL 语句和执行过程如下所示。

create table class_new
(
class_id int not null auto_increment,
class_name char(40) not null,
class_grade float not null,
class_info char(100) null,
primary key(class_id)
);
select * from class_new;

mysql 恢复删除表命令_mysql命令_mysql 命令修改密码

实例5:从class表中查询所有记录,并将其插入class_new表中,结果如下:

insert into class_new
(class_id,class_name,class_grade,class_info)
select class_id,class_name,class_grade,class_info
from class;
select * from class_new;

mysql命令_mysql 恢复删除表命令_mysql 命令修改密码

6.8 修改数据

使用 UPDATE 语句修改单个表,语法格式为:

UPDATE SET 字段 1=值 1 [,字段 2=值 2… ] [WHERE 子句 ]

[ORDER BY 子句] [LIMIT 子句]

语法说明如下:

注意:修改一行数据的多个列值时,SET 子句的每个值用逗号分开即可。

实验1:在 class_new 表中,更新所有行的class_grade 字段值为 4,输入的 SQL 语句和执行结果如下所示。

update class_new
set class_grade=4;
select * from class_new;

mysql 恢复删除表命令_mysql 命令修改密码_mysql命令

实验2:根据条件修改表中的数据,class 表中,更新 class_id 值为 2 的记录,将 class_grade 字段值改为 3.5,将 class_name 字段值改为“DB”,输入的 SQL 语句和执行结果如下所示。

update class_new
set class_name='DB',class_grade=3.5
where class_id=2;
select * from class_new;

mysql命令_mysql 命令修改密码_mysql 恢复删除表命令

6.9 删除数据

使用 DELETE 语句从单个表中删除数据,语法格式为:

DELETE FROM [WHERE 子句] [ORDER BY 子句] [LIMIT 子句]

语法说明如下:

注意:在不使用 WHERE 条件的时候,将删除所有数据。

实例1:删除class_new表中的全部数据,结果如下:

delete from class_new;
select * from class_new;

mysql 恢复删除表命令_mysql 命令修改密码_mysql命令

根据条件删除表中的数据

【实例 2】在 class 表中,删除 class_id 为 4 的记录,输入的 SQL 语句和执行结果如下所示。

elete from class
where class_id=4;
select * from class;

mysql 命令修改密码_mysql命令_mysql 恢复删除表命令

6.10 清空表记录 TRUNCATE关键字用于完全清空一个表。其语法格式如下:

TRUNCATE [TABLE] 表名

其中,TABLE 关键字可省略。

实验1;新建表 tb_student_course,插入数据并查询,SQL 语句和运行结果如下

create table tb_student_course(
id int(4) not null auto_increment,
name varchar(25) not null,
primary key (id)
);

mysql 恢复删除表命令_mysql命令_mysql 命令修改密码

使用 TRUNCATE 语句清空 tb_student_course 表中的记录,SQL 语句和运行结果如下:

insert into tb_student_course(name) values ('Java'),('MySQL'),('Python');
select * from tb_student_course;
truncate table tb_student_course;

mysql 命令修改密码_mysql 恢复删除表命令_mysql命令

TRUNCATE 和 DELETE 的区别

从逻辑上说,TRUNCATE 语句与 DELETE 语句作用相同,但是在某些情况下,两者在使用上有所区别。

总结

当不需要该表时,用 DROP;当仍要保留该表,但要删除所有记录时,用 TRUNCATE;当要删除部分记录时,用 DELETE。

(编辑:财气旺网 - 财气网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!