MySQL(二)
發佈於 2019-03-17
本篇,我们来说说 SQL 的基本操作 —— 库操作、表操作以及数据操作。
基本语法: create database {数据库名} [库选项];
-- 创建数据库
create database mydatabase;
库选项:
基本语法: show databases;
-- 显示全部数据库
show databases;
基本语法: show databases like ‘{模式匹配}’;
-- 显示部分数据库
show databases like 'my%';
基本语法: show create database {数据库名};
-- 显示数据库创建语句
show create database mydatabase;
基本语法: use {数据库名}; 在命令行会出现: Database changed
-- 选择数据库
use mydatabase;
5.5 版本之后,只能修改库选项,不能再修改库名了。 基本语法: alter databse {数据库名} {库选项};
-- 修改库选项
alter database mydatabase charset gbk;
基本语法: drop database {数据库名};
-- 删除数据库
drop database mydatabase;
基本语法: create table {表名}(字段 字段类型 [字段属性], …) [表选项];
-- 普通创建表
create table mydatabase.class(name varchar(10));
-- 或者
use mydatabase;
create table class(name varchar(10));
注意: 表必须放在对应的数据库之下,有两种方式:
表选项与库选项类似,包括:
基本语法: create table {表名} like {表名};
-- 复制表结构
create table mydatabase.test like mydatabase2.class;
基本语法: show tables;
-- 显示全部数据表
show tables;
基本语法: show tables like ‘{模式匹配}’;
-- 显示部分数据表
show tables like 'c%';
基本语法: desc {表名};
-- 显示表结构
desc test;
基本语法: alter table {表名} {表选项};
-- 修改表选项
alter table test engine innodb;
基本语法: rename table {旧表名} to {新表名};
-- 修改表名
rename table test to test1;
基本语法: alter table {表名} add {字段名} {字段类型} [字段属性];
-- 新增字段
alter table test1 add age int;
基本语法: alter table {表名} change {旧字段名} {新字段名} {字段类型} [字段属性];
-- 修改字段名
alter table test1 change age new_age int;
基本语法: alter table {表名} modify {字段名} {新字段类型} [新字段属性];
-- 修改字段类型或属性
alter table test1 modify name varchar(20);
基本语法: alter table {表名} drop {字段名};
-- 删除字段
alter table test1 drop new_age;
基本语法: drop table {表名};
-- 删除数据表
drop table test1;
基本语法: insert into {表名} [({字段1}, {字段2}, …)] values({字段值1}, {字段值2}, …);
-- 插入数据
insert into test (name, age) values('Tom', 20);
-- 或者
insert into test values('Lisi', 18);
基本语法: select * from {表名} [where 字段名 =/like 字段值];
-- 查询数据
select * from test;
-- 或者
select name, age from test where name='Lisi';
基本语法: delete from {表名} [where 字段名 =/like 字段值];
-- 删除数据
delete from test where age>=20;
基本语法: update {表名} set {字段名}={新值} [where 字段名 =/like 字段值];
-- 更新操作
update test set age=30 where name='Lisi';
select version();
-- +-----------+
-- | version() |
-- +-----------+
-- | 8.0.16 |
-- +-----------+
select database();
-- +------------+
-- | database() |
-- +------------+
-- | test |
-- +------------+