视图:
视图是一张虚拟表:表示一张表的部分数据或多张表的综合数据。其结构和数据是建立在对表的查询基础上。
视图中不存放数据:数据存放在视图所引用的原始表中。
一个原始表,根据不同用户的不同需求,可以创建不同的视图。
3.降低数据库的复杂程度。
4.将多个物理数据库抽象为一个逻辑数据库。
创建视图:CREATE VIEW view_name AS <SELECT 语句>;
删除视图:DROP VIEW view_name;
查看视图:SELECT 字段1,字段2, …… FROM view_name;
#统计每个学生所参考课程的平均成绩
索引是一种有效组合数据的方式,为快速查找到指定记录。
作用:大大提高数据库的检索速度。
改善数据库性能。
MySQL索引按存储类型分类:
B-树索引:InnoDB、MyISAM均支持。
哈希索引。
索引类型:
1.普通索引:基本索引类型。允许在定义索引的列中插入重复值和空值。
2.唯一索引:索引列数据不重复。允许有空值。
3.主键索引:主键列中的每个值是非空、唯一的。一个主键将自动创建主键索引。
4.复合索引:将多个列组合作为索引。
5.全文索引:支持值的全文查找。允许重复值和空值。
6.空间索引:对空间数据类型的列建立的索引。
创建索引:CREATE INDEX index_name ON table_name;
删除索引:DROP INDEX index_name ON table_name;
查看索引:SHOW INDEX FROM table_name;
使用索引时注意事项:
1.查询时减少使用*返回全部列,不要返回不需要的列。
2.索引应该尽量小,在字节数小的列上建立索引。
3.WHERE子句中有多个条件表达式时,包含索引列的表达式应置于其他条件表达式之前。
4.避免在ORDER BY子句中使用表达式。
备份数据库:mysqldump –u 用户名 –h 登录主机名 –p 密码 需备份的数据库名>备份的文件名.sql
注:mysqldump是DOS系统下的命令,在使用时无须进入mysql命令行,否则将无法执行。
恢复数据库:mysql–u 用户名 –p 数据库名 < 备份文件名.sql
注:1. mysql为DOS命令。
2.在执行该语句之前,必须在MySQL服务器中创建新数据库,如果不存在恢复数据库过程将会出错。
视图是一张虚拟表:表示一张表的部分数据或多张表的综合数据。其结构和数据是建立在对表的查询基础上。
视图中不存放数据:数据存放在视图所引用的原始表中。
一个原始表,根据不同用户的不同需求,可以创建不同的视图。
用途:
1.筛选表中的行。
2.防止未经许可的用户访问敏感数据。3.降低数据库的复杂程度。
4.将多个物理数据库抽象为一个逻辑数据库。
创建视图:CREATE VIEW view_name AS <SELECT 语句>;
删除视图:DROP VIEW view_name;
查看视图:SELECT 字段1,字段2, …… FROM view_name;
#统计每个学生所参考课程的平均成绩
CREATE VIEW view_result AS
SELECT studentname,subjectname,AVG(studentresult) FROM student
INNER JOIN result ON student.`studentNo`=result.`studentno`
INNER JOIN SUBJECT ON result.`subjectno`=subject.`subjectno`
GROUP BY studentname,subjectname;
索引:
索引是一种有效组合数据的方式,为快速查找到指定记录。
作用:大大提高数据库的检索速度。
改善数据库性能。
MySQL索引按存储类型分类:
B-树索引:InnoDB、MyISAM均支持。
哈希索引。
索引类型:
1.普通索引:基本索引类型。允许在定义索引的列中插入重复值和空值。
2.唯一索引:索引列数据不重复。允许有空值。
3.主键索引:主键列中的每个值是非空、唯一的。一个主键将自动创建主键索引。
4.复合索引:将多个列组合作为索引。
5.全文索引:支持值的全文查找。允许重复值和空值。
6.空间索引:对空间数据类型的列建立的索引。
创建索引:CREATE INDEX index_name ON table_name;
删除索引:DROP INDEX index_name ON table_name;
查看索引:SHOW INDEX FROM table_name;
使用索引时注意事项:
1.查询时减少使用*返回全部列,不要返回不需要的列。
2.索引应该尽量小,在字节数小的列上建立索引。
3.WHERE子句中有多个条件表达式时,包含索引列的表达式应置于其他条件表达式之前。
4.避免在ORDER BY子句中使用表达式。
备份数据库:mysqldump –u 用户名 –h 登录主机名 –p 密码 需备份的数据库名>备份的文件名.sql
注:mysqldump是DOS系统下的命令,在使用时无须进入mysql命令行,否则将无法执行。
恢复数据库:mysql–u 用户名 –p 数据库名 < 备份文件名.sql
注:1. mysql为DOS命令。
2.在执行该语句之前,必须在MySQL服务器中创建新数据库,如果不存在恢复数据库过程将会出错。