###字段的相应修改
-
修改默认值,alter table 表 alter column 字段 set default 默认值;
-
修改字段名,alter table表 rename column 字段1 to 字段2;
-
修改-modify,不能改名,语法: alter table 表 modify column 字段 类型 默认值;
-
修改-change,可改名,语法:alter table 表 change 字段1 字段2 类型 默认值;
-
增加-add,alter table 表 add 字段 类型 默认值;
-
删除-drop,alter table 表 drop 字段
###INSERT
多个value插入,并保证UNIQUE约束的列重复时,为更新数据。
INSERT INTO table (a,b,c) VALUES (1,2,3),(4,5,6)
ON DUPLICATE KEY UPDATE b=VALUES(b),c=VALUES(c);
###DROP
-
删除表
- drop table 表;
- truncate table 表, 仅仅需要除去表内的数据,但并不删除表本身
- delete,只删除数据,DELETE (*可省略)FROM table_name
-
修改表名
- rename table 表1 to 表2; //不规范
- alter table 表 rename 表2
- alter table 表 rename to 表2
###like 通配符
- %,匹配0个或者多个字符
- _(下划线),匹配一个字符
- [charlist], 匹配里面的一个,mysql好像不好用
- [^ charlist ], 不在里面
###数据类型
mysql三大数据类型,Text,Number,Date
#####Text
char 和 varchar区别与选择:
- char的存储速度还是要比varchar要快的多,因为其长度固定,方便程序的存储和查找
- varchar 当其更改前后数据长度不一致时,就不可避免的会出现碎片的问题
- 超过255个字符,转化为text 。
###视图
视图是一个基于select query 和 join产生的虚拟表,为了提高查询的效率和安全。
可以把视图当成table来创建,查询,删除。
创建视图:
CREATE VIEW v_article AS
SELECT A.title, A.content, A.author, C.name AS categoryName
FROM article AS A JOIN articleCategory AS C ON A.articleCategoryId=C.articleCategoryId;
视图的更新数据和插入数据
https://blog.csdn.net/nimeijian/article/details/51958758
需要满足许多约束,例如:多个表链接的视图,以及包含结构如:
- 聚合函数
- distinct
- order by
- group by
等等等等等
就不能插入数据