博客
关于我
Mysql理论知识点基础篇二(视图-索引-游标-存储过程-触发器-用户管理-数据备份与恢复)
阅读量:354 次
发布时间:2019-03-04

本文共 1693 字,大约阅读时间需要 5 分钟。

数据库对象及其应用

一 视图

视图是一种虚拟表,允许用户通过单一SQL查询获取多个表的数据。以下是创建视图的命令及其相关说明:

创建视图的命令

CREATE VIEW 视图名 ASSELECT 语句

特点

  • 不允许创建索引和触发器。
  • 可以对视图进行更新操作,但每次更新仅影响一个表。
  • 视图是虚拟表,不存储实际数据。
  • 若定义视图的SQL语句包含计算、分组或聚合函数,则视图不可更新。
  • 创建视图的优点:提升数据库安全性。
  • 二 索引

    索引是提升数据库查询速度的重要工具。以下是创建索引的命令及其相关说明:

    创建索引的命令

    CREATE [UNIQUE] INDEX 索引名 ON 表名(列名 [ASC|DESC])

    索引的优缺点

    • 优点:加速查询。
    • 缺点:降低更新速度。

    注意事项

    • 视图上不允许创建索引。
    • 索引可以在建表时创建,也可在表已存在时添加。

    三 游标

    游标是一种用来操作数据库结果集的工具。以下是定义游标的命令及其相关说明:

    定义游标的命令

    DECLARE 游标名 CURSOR FOR SELECT 语句

    游标操作

    • 声明DECLARE cursor_name CURSOR FOR SELECT ...
    • 打开OPEN cursor_name
    • 读取FETCH NEXT FROM cursor_name
    • 关闭CLOSE cursor_name

    特点

    • 游标相当于数据库操作中的“指针”,用于逐行处理结果集。

    四 存储过程

    存储过程是一种可重用、模块化的数据库程序。以下是定义存储过程的命令及其相关说明:

    定义存储过程的命令

    CREATE PROCEDURE 存储过程名(IN|OUT|INOUT 参数名 数据类型 [, ...N])BEGIN  SQL语句序列END;

    存储过程的特点

    • 支持三种参数类型:IN、OUT、INOUT。
    • 可使用变量和条件判断。
    • 存储过程执行需使用CALL命令。
    • 不支持返回值。

    五 触发器

    触发器是一种自动执行的数据库操作,根据数据变化事件(INSERT、UPDATE、DELETE)激活。以下是触发器的特点及相关说明:

    触发器的特点

    • 只能定义在表上。
    • 不支持在ALTERDELETE操作中重新定义。
    • 不能使用触发器执行的ALTERDELETERENAME等语句。

    六 用户管理

    用户管理是数据库安全的重要组成部分。以下是用户管理的相关命令及说明:

    创建用户的命令

    CREATE USER '用户名'@'localhost' IDENTIFIED BY '用户密码';

    修改用户密码的命令

    SET password FOR '用户名'@'localhost' = password('新密码');

    授予权限的命令

    GRANT select, delete ON 数据库名.表名 TO '用户名'@'localhost';

    回收权限的命令

    REVOKE select, delete ON 数据库名.表名 FROM '用户名'@'localhost';

    示例

    CREATE USER 'u1'@'localhost' identified by '12345';SET password for 'u1'@'localhost' = password('45678');GRANT select, delete ON lianxi.stu TO 'u1'@'localhost';REVOKE select, delete ON lianxi.stu FROM 'u1'@'localhost';

    七 数据备份与恢复

    数据备份与恢复是数据库管理中的关键环节。以下是数据备份与恢复的相关命令及说明:

    数据备份的命令

    mysqldump

    数据恢复的命令

    mysql

    注意事项

    • 数据备份前,建议先执行FLUSH TABLESLOCK Tables以确保数据一致性。
    • 数据恢复时,应将备份文件还原到相应的数据库,并重命名原始数据表以避免冲突。

    通过以上命令和知识,您可以更高效地管理数据库,提升开发效率和数据安全性。

    转载地址:http://ccnr.baihongyu.com/

    你可能感兴趣的文章
    Openlayers高级交互(1/20): 控制功能综合展示(版权、坐标显示、放缩、比例尺、测量等)
    查看>>
    Openlayers高级交互(10/20):绘制矩形,截取对应部分的地图并保存
    查看>>
    Openlayers高级交互(11/20):显示带箭头的线段轨迹,箭头居中
    查看>>
    Openlayers高级交互(12/20):利用高德逆地理编码,点击位置,显示坐标和地址
    查看>>
    Openlayers高级交互(13/20):选择左右两部分的地图内容,横向卷帘
    查看>>
    Openlayers高级交互(14/20):汽车移动轨迹动画(开始、暂停、结束)
    查看>>
    Openlayers高级交互(15/20):显示海量多边形,10ms加载完成
    查看>>
    Openlayers高级交互(16/20):两个多边形的交集、差集、并集处理
    查看>>
    Openlayers高级交互(17/20):通过坐标显示多边形,计算出最大幅宽
    查看>>
    Openlayers高级交互(18/20):根据feature,将图形适配到最可视化窗口
    查看>>
    Openlayers高级交互(19/20): 地图上点击某处,列表中显示对应位置
    查看>>
    Openlayers高级交互(2/20):清除所有图层的有效方法
    查看>>
    Openlayers高级交互(20/20):超级数据聚合,页面不再混乱
    查看>>
    Openlayers高级交互(3/20):动态添加 layer 到 layerGroup,并动态删除
    查看>>
    Openlayers高级交互(4/20):手绘多边形,导出KML文件,可以自定义name和style
    查看>>
    Openlayers高级交互(5/20):右键点击,获取该点下多个图层的feature信息
    查看>>
    Openlayers高级交互(6/20):绘制某点,判断它是否在一个电子围栏内
    查看>>
    Openlayers高级交互(7/20):点击某点弹出窗口,自动播放视频
    查看>>
    Openlayers高级交互(8/20):选取feature,平移feature
    查看>>
    Openlayers高级交互(9/20):编辑图形(放缩、平移、变形、旋转),停止编辑
    查看>>