当你在网络浏览某些东西的时候,有可能这就涉及到一些数据库的内容,把原生设定在数据库的内容,通过客户端用户的查询可以让广大用户去查询到想知道的资料。那神秘的数据库是什么原理的。
数据库有四大主块“增、删、改、查”,概况了所有数据库的操作。
-
查看数据库
-
show databases;
-
-
创建数据库
-
create database mydb;
-
-
删除数据库
-
drop database mydb;
-
-
查看支持的所有字符集
-
show character set;
-
-
查看支持的所有排序规则
-
show collation;
-
-
修改数据库的默认字符集
-
alter database testdb character set utf32;
-
-
修改数据库的默认字符排序规则
-
alter database testdb collate utf32_sinhala_ci;
-
表操作
-
使用格式
create table [if not exists] tb_name (col1 datatype 修饰符, col2 datatype 修饰符) engine=' '
-
查看所有的引擎(被支持的)
-
show engines
-
-
查看所有数据库中的表
-
show tables;
-
show tables from mysql;
-
-
查看表结构
-
desc students;
-
-
创建表
-
create table students(id int unsigned not null primary key, name varchar(30) not null, age tinyint unsigned not null,gender enum('F','M'))
-
-
向表中添加字段
-
alter table students add second_name char(30);
-
-
向表中删除字段
-
alter table students drop second_name;
-
-
对表添加主键
-
alter table students2 add primary key (id);
-
-
对表删除主键
-
alter table students2 drop primary key;
-
-
对表添加索引
-
alter table students2 add index name (name);
-
-
对表删除索引
-
alter table students2 drop index name;
-
drop index name on students2;
-
-
对表添加唯一键
-
alter table students drop second_name;
-
-
对表删除唯一键
-
alter table students drop index name;
-
-
修改字段字义属性
-
alter table students modify name char(20);
-
alter table students2 change name new_name char(20) after id;
-
alter table students2 change name new_name char(20);
modify : 只可以修改字段定义的属性 change : 可以修改字段名称和定义的字段属性
-
-
查看表状态
-
show table status like 'students2'\G
-
-
修改表引擎
-
alter table students2 engine[=]myisam;
-
-
查看表的字段描述
-
desc students;
-
-
查看库中的所有表
-
show tables
-
show tables from mysql;
-
-
删除表
-
drop table students2;
-
向表中插入数据
-
insert weizi value(1,'zhen',30,'F');
-
insert weizi values(3,'wei',30,'F'),(4,'ping',31,'F');
-
insert weizi (id,name) value (5,"weizi");
删除表中的数据
-
delete from weizi where name="zhen";
-
delete from weizi where age is null;
-
delete from weizi where age > 30;
-
delete from weizi where id >=50 and age <=20;
-
delete from weizi order by age asc limit 5;
修改表中的字段值
-
update weizi set age=35 where id=3 and age=30;
-
update weizi set age=age-5 where age=35;
-
update weizi age=age-age;
-
update weizi set age=age-5 where order by id desc limit 10;
-
update weizi set age=age-15 where name not like 'stu%';
Select操作语句
- 使用格式
select col1,col2,....from tb1_name [where clause] [order y 'col_name'] [limit [m,]n]
-
字段表示法
-
*
: 表示所有字段 -
as
: 字段别名, col1 as alias1
-
-
where clause
-
操作符
:-
==
-
<
-
>
-
<=
-
>=
-
!=
-
between....and...
-
-
条件逻辑操作
-
and
-
or
-
not
-
-
模糊匹配
-
like
-
%
-
_
-
-
rlike 'pattern'
: 基于正则表达式匹配 -
is null
-
is no null
-
-
-
排序
-
desc
: 降序 -
asc
: 升序
-
Select示例
-
select name,age from students where age >30 and age<80;
-
select name,age from students where age between 30 and 80;
-
select name from students where name like '%ang%';
-
select name from students where name rlike '^.*ang.*$;
-
select name,age from students where age is null;
-
select name,age form students where age is not null;
-
select id,name from students order by name;
-
select id,name from students order by name desc;
权限及授权管理
-
用户表示方法:
username@host
-
管理权限的分类
-
管理权限
-
数据库
-
表
-
字段
-
存储例程
-