分享我的的学习过程与体会(入坑sql的第五天)java
什么是数据库视图
-》在初步学习数据库视图时,个人第一反应就是将其拆开,分为:数据库----视图
什么是数据库?数据信息的存放集合。什么是视图?视觉图片,信息展现的一种方式,能被咱们肉眼所看到。
因此,数据库视图:展现数据库中咱们所要查询信息的图像(图表)
-》以后我又了解了,视图在数据库中的存在形式是一串sql语句(?),它包含了视图的名字和视图对应的查询方法,它所展现的数据全都存在于它所查询的基本数据表里。因此,我由此得知了它被称为虚拟表的缘由(并未存听任何数据,只是一个接口)mysql
为何要建立数据库视图
-》更加直接的显示咱们所想在数据库中所要查询获取的信息,方便咱们对于具体信息的处理与操做。
-》安全,有的数据是须要保密的,若是直接把表给出来进行操做会形成泄密,那么能够经过建立视图把相应视图的权限给出来便可保证数据的安全(百度)。web
视图的建立与操做
建立:
create view 视图名 as select 字段名1,字段名2 ....字段名N from 表名
◆DESCRIBE语句查看视图基本信息
◼DESCRIBE 视图名;
◆SHOW TABLE STATUS语句查看视图基本信息
◼SHOW TABLE STATUS LIKE’视图名’;
◆SHOW CREATE VIEW语句查看视图详细信息
◼SHOW CREATE VIEW视图名;sql
视图的其他增、删、改、查操做均与基本表操做一致数据库
注意!对于视图的增删改均会影响到它所关联的基本表,我想是由于它是虚表,没有保存数据的能力。安全
delimiter $ //设置sql语句的结束符 create trigger tri_1 //建立一个名为tri_1的触发器 after insert on commodity //监视commodity表的insert操做 for each row //对每一行监听 begin //触发以后开始的语句 update `order` set c_num = c_num - new.o_num where new.o_cid = c_id; //语句操做 end $ //完成建立trigger $结束 delimiter ; //reset 结束符总结:触发器使得mysql的数据操做更加灵活,省去了一大段由于相关联表的数据修改而产生的一长串表信息修改问题。赞!
-》学过以后感受…
为何不用Java或者其余语言来实现它(sql)所想实现的业务逻辑…
因此不想对此多加探讨svg