mysql创建视图(navicat)
为了避免复杂的数据库级联,可以采用视图的方式,将多个表中的字段加到视图中。这样在查询或修改数据时,只需查询或修改视图即可。
查询、修改、删除视图的sql语句和表是一样的。注:在这里使用的MySQL客户端为“Navicat for MySQL”。
一、 打开navicat for mysql,然后打开相应的数据库。点击视图。
二、 点击新建视图,选择视图创建工具
三、 将左栏的学生表和成绩表拖到右边的空白处
四、 如下图所示
五、 用鼠标点击右边的小方框,选中数据表中的各个字段
六、 点击保存,输入视图名字
七、 关闭正在编辑的窗口,出现如下图所示:
八、 可以对试图进行打开、设计、删除等操作
九、 打开视图,可以发现视图和表一样,具有与表一样的结构
一十、 也可以通过SQL语句来创建视图
以下是创建视图要注意的事项:
navicat for mysql连接不成功1、选中表中字段。视图中不能有重复的字段。
2、切换到“定义”选项卡,可以看到创建视图的实际sql语句。
`info` join `user` 表示:info表与user表进行级联。
WITH CHECK OPTION表示:表中的数据修改后,仍可通过视图看到修改的数据。当视图是根据另一个视图定义的时,WITH CHECK OPTION给出两个参数:LOCAL和CASCADED。它们决定了检查测试的范围。Local关键字使CHECK OPTION只对定义的视图进行检查,CASCADED则会对所有视图进行检查。如果未给定任一关键字,默认值为CASCADED。
3、切换到“高级”选项卡,选择视图的算法
mysql视图的算法有三个参数分别是:Merge、TEMPTABLE、UNDEFINED
因为临时表中的数据不可更新。所以,如果使用TEMPTABLE,无法进行更新。
当你的参数定义是UNDEFINED(没有定义算法)。
mysql更倾向于选择Merge算法(合并方式)。是因为它更加有效