欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

MySQL数据库基本操作

程序员文章站 2022-03-24 23:52:52
...

一.数据库的操作

1. 创建数据库

create database [if not exists] `数据库名` charset=字符编码(utf8mb4);

2.查看数据库

show databases;

3. 选择数据库

use `数据库的名字`;

4. 查看当前选择的数据库

select database();

5. 创建数据库

create database `数据库名`;

6. 修改数据库

-- 只能修改字符集
alter database `数据库名` charset=字符集;

7.删除数据库

drop database [if exists] `数据库的名字`;

8.数据库操作思维导图

MySQL数据库基本操作

二. 表的操作

1.表的创建

表是建立在数据库中的数据结构,是一类数据的存储集。

create table [if not exists] `表的名字`(
id int not null auto_increment primary key comment '主键',
account char(255) comment '用户名' default 'admin',
pwd text(16383) comment '密码' not null
)charset=utf8mb4;

备注:

  • 字符集如果不指定, 默认继承库的字符集.

2. 查看所有的表

  • 选择数据库后,才能查看表
show tables;

4. 删除表

  • 删除表必须在数据库中进行删除
drop table [if exists] `表名`

5. 显示建表结构

desc `表名`;
describe `表名`;

6. 修改表

-- 修改表的名称
alter table `old_name` rename `new_name`;
-- 移动表 到指定的数据库
alter table `表名` rename to 数据库名.表名;

7.修改字段

-- 增加一个新的字段
alter table `表名` add `字段名` 数据类型 [属性];
-- 增加一个新的字段, 并放在首位
alter table `表名` add `字段名` 数据类型 [属性] first;
-- 增加一个新的字段, 并放在某一个字段之后
alter table `表名` add `字段名` 数据类型 [属性] after 指定字段;
-- 修改字段的属性
alter table `表名` modify `字段名` 数据类型 [属性];
-- 修改字段的名称
alter table `表名` change `原字段名` `新的字段名` 数据类型 [属性];
-- 修改字段的位置
alter table `表名` change `原字段名` `新的字段名` 数据类型 after `指定字段`;
-- 删除字段
alter table `表名` drop `字段名`;

8. 复制表

(1). 先在创建一个表,并在表中插入一些数据

/* 创建 abc 表*/
create table abc(
id int primary key auto_increment comment '主键',
username char(32) not null comment '账户',
password char(32) not null comment '密码'
);
/* 插入两条数据 */
insert into abc values(null, 'tom', md5(123456)), (null, 'bob',
md5(123456));

(2). 复制表,并且复制数据

  • 执行
create table `复制表的名称` select * from `原表名`;
  • 特点:
    • 完整的复制一个表,既有原表的结构,又有原表的数据
    • 表内字段的属性会丢失,主键的自增等特性不复存在,新插入数据时会有问题
    • 最好不要使用这种方式复制

(3). 仅复制表结构, 不复制数据

  • 执行:
create table `复制表的名称` like `原表名`;
  • 特点: 复制后的表结构与原表完全相同,字段的属性与原表也完全一致。但是里面没有数据,是一张空表
  • 如果需要,数据可以单独复制
insert into `复制表的名称` select * from `原表名`;

MySQL数据库基本操作

三.CURD 语句的基本使用

对表中数据的操作一般分为四类, 常记做 “CURD”:

  • C: 创建(Create)
  • U: 更新(Update)
  • R: 读取(Retrieve)
  • D: 删除(Delete)

1. INSERT 插入

INSERT INTO `表名` (`字段1`, `字段2`, ...) VALUES (`1`, `2`, ...);

其中的 INTO 在 MySQL 数据库中可以省略, 但在某些数据库中必须要有。

-- 一次插入一行
insert into `表名` set `字段`=, `字段`=;
-- 按照指定字段, 一次插入多行
insert into `表名` (字段1, 字段2 ...) values (1,2, ...), (1,2, ...);
-- 指定全部字段, 一次插入多行
insert into `表名` values (null,1,2, ...), (null,1,2, ...);

2. SELECT (查询)

-- 通过 * 获取全部字段的数据
select * from `表名`;
-- 获取指定字段的数据
select `字段1`, `字段2` from `表名`;

3. UPDATE (更新)

-- 修改全表数据
update `表名` set `字段1`=, `字段2`=;
-- 使用 where 修改满足条件的行
-- where 类似于 if 条件, 只执行返回结果为 True 的语句
update `表名` set `字段1`=, `字段2`=where `字段`=;
update `表名` set `字段1`=, `字段2`=where `字段`=and `字段`=;

4. DELETE (删除)

-- 删除表中的所有数据 (逐行删除)
delete from `表名`;
-- 清空全表 (一次性整表删除)
truncate `表名`
-- 使用 where 修改满足条件的行
delete from `表名` where `字段` =;
delete from `表名` where `字段` in (1, 2, 3, 4);

MySQL数据库基本操作

相关标签: 数据库