1、系统数据库:
information_schema : 系统中的数据库对象信息(用户表信息、列信息、权限信息、字符集信息和分区信息)。
performance_schema : 数据库服务器性能参数。
sys : 系统参数。
2、基本操作:xxx表示名字
(1)对数据库的操作
创建数据库 : create database xxx;
查询数据库 : show databases;
选择数据库 :use database;
删除数据库 :drop database xxx;
查看数据库引擎 :show engines; 或 show variables like 'have%';
(2)数据类型:
整数型 :tinyint(1字节,-128到127),smallint(2字节,-32768到32767),mediumint(3字节,-8388608到8388607),int(integer,4字节)和bigint 8字节
浮点数:float(4字节),double(8字节),dec(m,d)即decimal(m,d)(m+2字节);
位:bit(1-8字节)
日期 :date(年月日),datetime(年月日时分秒),timestamp(时间戳),time(时分秒),year(年)
字符串:char(m)[这里的m小于255],varchar(m)
还有text、binary、blob等。
(3)表的操作
创建表:create table xxx{
属性名 数据类型,
属性名 数据类型,
...
}
查看表 : 查看表定义 :describe table_name;
查看详细表定义 :show create table table_name;
删除表 :drop table table_name;
修改表 :修改表名 : alter table old_table_name rename [to] new_table_name;
增加字段 : 最后一个位置添加 :alter table table_name add 属性名 属性类型;
第一个位置 :alter table table_name add 属性名 属性类型 first;
指定位置 :alter table table_name add 属性名 属性类型 after 属性名;
删除字段 : alter table table_name drop 属性名;
修改字段 : 修改数据类型 : alter table table_name modify 属性名 数据类型;
修改属性名 :alter table table_name change 旧属性名 新属性名 数据类型;
修改字段顺序 :alter table table_name modify 属性名1 数据类型 first|after 属性名2;
约束字段 :一般来讲的格式有两种 1、属性名 属性类型 约束字段 2、constraint 约束名 约束字段(属性名1,属性名2,...);
not null (NN,NK)非空
default (默认值)
unique(UK,UQ)唯一约束
primary key (PK) 主键约束 分为单字段主键和多字段主键
auto_increment (AI) 字段值自动增加
(4)数据库的索引
MySQL支持6种索引:普通索引、唯一索引(unique)、全文索引(fulltext)、单列索引、多列索引和空间索引。
根据索引的存储类型,可以分为B型树索引和哈希索引。
创建索引:1、在创建表时创建 index|key 索引名(属性名1 (长度)) asc|desc 其中asc升序、dasc降序
2、在已存在的表上创建 create index 索引名 on table_name (属性名 (长度)) asc|dasc
3、通过alter table创建 alter table table_name add index|key 索引名 (属性名 (长度)) asc|dasc
删除索引 : drop index index_name on table_name
(5)触发器
创建触发器 : create trigger trigger_name before|after trigger_event on table_name for each trigger_stmt
trigger_event 包括 delete、insert和update trigger_stmt 表示激活触发器后执行的语句。
多条执行语句的触发器 : create trigger trigger_name
before|after trigger_event on table_name for each row
begin
trigger_stmt1
trigger_stmt2
end
查看触发器 : show triggers
删除触发器 : drop trigger trigger_name
(6)数据库的操作
插入数据 : insert into table_name(field1,field2,...) values (value1,value2,...)
更新数据 :update table_name set field1 = value1
fedld2 = value2
where condition
删除数据 :delete from table_name where condition
查找数据 :select field1,field2,... from table_name
避免重复数据的查找:select distinct xxx from table_name
设置格式 :select concat(xxx,'qqq',xxx) from table_name
条件查找 :1、and(&&) 2、[not] between and 3、is [not] null 4、 in:表示在集合中,也可用or表示
5、like 模糊查找 'a%'以a开头(不分大小写) '_a%'(第二个字母是a)
6、order by 排序
...待续