数据库中严禁使用视图

tianpeng91 发布于 2012/07/20 13:33
阅读 1K+
收藏 2
各位,小弟呢今年大三,然后找到了东华软件公司实习的机会。他们的编程规范中有这样的一个规定,我感觉很奇怪, 严禁使用视图,我觉得很奇怪,为什么不准使用视图呢??哪位做过项目经理或DBA的告诉下勒,谢谢啦!!!
加载中
0
tianpeng91
tianpeng91
在线等答案呀,,,,求大神!!!!
0
逝水fox
逝水fox

只知道有人说对视图的查询最后会转化成对基本表的查询,如果视图本身关联的表多,性能还是会不好。

这个得问问定这个规定的人之前遇到过什么问题。我们还规定SQL操作都要简单操作什么的,哪怕应用程序多做点。

tianpeng91
tianpeng91
回复 @loki_lan : 这个,。。。。。
loki_lan
loki_lan
估计那公司服务器不咋的,不然怎么会不使用视图
纠结名字_我艹你妹
纠结名字_我艹你妹
"SQL操作都要简单操作" 左链接 内链接 算不算简单啊??
tianpeng91
tianpeng91
这个确实,视图最后是转换为SQL语句对基本表进行操作,但是如果自己写SQL关联不还是一样么??我感觉很奇怪,还有啊,比如,排序也要求尽量少使用,难道查询出来后由程序排序么???
0
pckingchrrity
pckingchrrity
视图 基本上都是 几张表之间的关联数据。对大数据量 查询非常有压力。很多公司都这样
pckingchrrity
pckingchrrity
回复 @张浩春 : 手写sql语句一般都orm框架吧。类似于ibatis之类的所有的sql语句都在一个目录下,也可以方便调优
tianpeng91
tianpeng91
可是有一个问题,比如我要查询好几张表里面的数据,不使用视图,那就只能写SQL语句,但是写出来的SQL语句肯定很长,那样很麻烦呀。再说我们自己写SQL语句,实际上和视图完成的查询是一样的,有什么差别呢??小弟确实不知道,望勿喷。
0
CheckStyle
CheckStyle

视图会把物理表之间的关系隐藏掉,很容易导致对视图的查询产生性能问题.

另外,几乎所有的数据库的查询分析器,都无法对针对视图的复杂SQL,做到很好的优化.

CheckStyle
CheckStyle
回复 @韩冬 : 快照有其独特的使用场景
卧枝会中田
卧枝会中田
Oracle 可以做物化视图,你可以理解成一张真实的物理表需要占空间,同时你可以对他做各种表的优化,索引,分区
0
CheckStyle
CheckStyle
再加上大量的开发人员是新手,滥用视图,会造成系统性能和设计的不可控
0
宏哥
宏哥

引用来自“CheckStyle”的答案

再加上大量的开发人员是新手,滥用视图,会造成系统性能和设计的不可控

这个规定是 指全范围规定,还是对一般开发人员的规定?

或者说 系统开发完全不允许使用视图?

tianpeng91
tianpeng91
反正这个公司的开发文档中明确规定“严禁使用”四字,但我们平时自己做些小东西,经常用视图,所以感觉颇为奇怪
0
CheckStyle
CheckStyle

引用来自“宏哥”的答案

引用来自“CheckStyle”的答案

再加上大量的开发人员是新手,滥用视图,会造成系统性能和设计的不可控

这个规定是 指全范围规定,还是对一般开发人员的规定?

或者说 系统开发完全不允许使用视图?

看情况吧,未必一刀切.

我认为,就算要建视图,这样的设计,要通过DBA或架构师的核准

tianpeng91
tianpeng91
额。。。。好吧,小弟又一次2了,谢谢各位了!!唉。。。。看来得改变习惯了,以前习惯使用视图
0
宏哥
宏哥

引用来自“CheckStyle”的答案

引用来自“宏哥”的答案

引用来自“CheckStyle”的答案

再加上大量的开发人员是新手,滥用视图,会造成系统性能和设计的不可控

这个规定是 指全范围规定,还是对一般开发人员的规定?

或者说 系统开发完全不允许使用视图?

看情况吧,未必一刀切.

我认为,就算要建视图,这样的设计,要通过DBA或架构师的核准

是 .这种功能不能滥用.
0
泡不烂的凉粉
泡不烂的凉粉
搞数据库,估计没权限吧。 给什么用什么。 估计能用的只能是视图。
0
中山野鬼
中山野鬼

引用来自“CheckStyle”的答案

再加上大量的开发人员是新手,滥用视图,会造成系统性能和设计的不可控
哈。这个是关键点。。。。给新手养成习惯了,会滥用一些东西,结果呢?足以把项目技术负责人气吐血。。
返回顶部
顶部