<---------简单的数据库的操作-------------->
//创建数据库
create database database_name
//查看数据库
show databases
//选择数据库
use database_name
//删除数据库
drop database database_name
<-----------------数据库中的存储引擎和数据类型------------------>
//查看支持的存储引擎
show engines;
//查询默认的储存引擎
show valiables like 'storage_engine%';
<----------------表的操作----------------------->
//创建表
create table table_name(
属性名 数据类型,
属性名 数据类型,
...
属性名 数据类型
)
//查看表
show tables;
//查看表的定义
describe table_name
//查看表的详细的定义
show create table table_name
//删除表
drop table table_name
//修改表--修改表名
alter table old_table_name rename 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 change 旧属性名 新属性名 新数据类型
//修改表--修改字段的顺序
alter table table_name modify 属性名1 数据类型 first|after 属性名2
//操作表的约束
//操作表的约束--设置非空约束(not null)
create table table_name(
属性名 属性类型 not null,
...
)
//操作表的约束--设置字段的默认值(default)
create table table_name(
属性名 属性类型 default 默认值,
...
)
//操作表的约束--设置唯一约束(unique,uk)
create table table_name(
属性名 属性类型 unique,
...
)
//操作表的约束--设置主键约束(primary key,pk)--设置单字段主键,主键是当个表内属性作用
create table table_name(
属性名 属性类型 primary key,
...
)
//操作表的约束--设置主键约束(primary key,pk)--设置多字段主键,主键是当个表内属性作用
create table table_name(
属性名 属性类型,
...,
[constraint 约束名] primary key(属性名,属性名...)
)
//操作表的约束--设置字段值自动增加(auto_increment)
create table table_name(
属性名 属性类型 auto_increment
)
//操作表的约束--设置外键约束(foreign key,fk)
create table table_name(
属性名 属性类型,
属性名 属性类型,
...
constraint 外键约束名 foreign key (属性名1)
references 表名 (属性名2)
)
<-----------------索引的操作--------------->
//创建和查看普通索引
//创建表的同时创建
create table table_name(
属性名 属性类型,
属性名 属性类型,
...
属性名 属性类型,
index|key [索引名字](属性名1 [(长度)] [asc|desc])
)
//在已经存在的表上创建普通索引
create index 索引名 on 表名 (属性名 [长度] [asc|desc])
//通过sql语句的alter table创建普通索引
alter table table_name add index|key 索引名字(属性名1 [(长度)] [asc|desc])
//创建和查看唯一的索引
//创建表的同时创建
create table table_name(
属性名 属性类型,
属性名 属性类型,
...
属性名 属性类型,
unique index|key [索引名字](属性名1 [(长度)] [asc|desc])
)
//在已经存在的表上创建普通索引
create unique index 索引名 on 表名 (属性名 [长度] [asc|desc])
//通过sql语句的alter table创建普通索引
alter table table_name add unique index|key 索引名字(属性名1 [(长度)] [asc|desc])
//创建和查看全文索引
//创建表的同时创建
create table table_name(
属性名 属性类型,
属性名 属性类型,
...
属性名 属性类型,
fulltext index|key [索引名字](属性名1 [(长度)] [asc|desc])
)
//在已经存在的表上创建普通索引
create fulltext index 索引名 on 表名 (属性名 [长度] [asc|desc])
//通过sql语句的alter table创建普通索引
alter table table_name add fulltext index|key 索引名字(属性名1 [(长度)] [asc|desc])
//创建和查看多列索引
//创建表的同时创建
create table table_name(
属性名 属性类型,
属性名 属性类型,
...
属性名 属性类型,
fulltext index|key [索引名字](属性名1 [(长度)] [asc|desc],
...
属性名n [(长度)] [asc|desc])
)
//在已经存在的表上创建普通索引
create fulltext index 索引名 on 表名 (属性名1 [长度] [asc|desc],
...
属性名n [(长度)] [asc|desc])
//通过sql语句的alter table创建普通索引
alter table table_name add fulltext index|key 索引名字(属性名1 [(长度)] [asc|desc],
...
属性名n [(长度)] [asc|desc])
//删除索引
drop index index_name on table_name
<------------------视图的操作------------------>
//视图虽然可以被看成是一种虚拟表,但是其物理上是不存在的
//创建视图
create view view_name as 查询语句
//查看视图
use database_name
show tables
// 查看信息的详细信息
show table status [from db_name] [like 'pattern']
//查看视图的定义的信息
show create view view_name
//查看视图设计信息
describe | desc view_name
//删除视图
drop view view_name
//修改视图--create or replace view语句修改视图
create view view_name as 查询语句
--可以这样子
drop view view_exist;
create view new_view as 查询语句
//修改视图--alter语句修改视图
alter view view_name as 查询语句
//利用视图操作基本表
//检索(查询)数据
--通过视图查询数据,与通过表进行查询完全相同,只不过是通过视图查询会比表更加安全、更加简单、实用。
--在具体实现的时候,只需要将表名换成视图名就可以了
--例子:select * from view_selectproduct
//利用视图操作基本表的数据--添加数据操作
insert into view_select [(字段)] values (相关值)
//利用视图操作基本表的数据--删除数据操作
delete from view_select 查询语句
//利用视图操作基本表的数据--更新数据操作
update view_select set 相关语句