sql数据库数据量庞大时怎么处理
问题描述
- 精选答案
-
我用的是postgresql,发现同样的逻辑,存储过程的代码是c#的三分之一。
因为存储过程语言是为描述数据创建的,对于变量和数据的混合处理有天然优势。再加上一些注释,代码可读性比c#更高。而且由于服务器和数据库是一次交互,执行更快,用户体验好,服务器并发好。postgresql存储过程支持断点调试的。当然我不建议几千行的存储过程。存储过程的目的是为了执行速度更快,代码更简洁。我也不认为简单的增删改查也用存储过程。这些应该交给orm。存储过程应该用同时满足以下几个条件时:
1. 用户高频使用这个功能 2.这个功能需要多次访问数据库存储过程的另一个好处是在编译时就可以检查sql语句的错误不用等执行。缺点是,当数据库修改后,你如果不重新编译存储过程是无法知道程序中哪些地方需要修改字段名。但是相比她带来的好处,这一点可以忍受。另外orm也只是可以检测字段,但是存储过程连语法都检测了。现代互联网应用的基石是MySQL,而早期mysql没有存储过程,而且数据往往要分多个库,搞存储过程要一个个库去更新,万一漏了一个就会出问题。互联网应用的逻辑相对没有erp复杂,所以都不用存储过程。但是现在是2019年了,mysql数据库也支持分区表了,一个库就能搞定很大数据量。存储过程也支持了,适当使用存储过程并无不妥。尤其是postgresql数据库连断点调试都具备了,语法又那么优雅。所以我支持用存储过程,但不能滥用,要好钢用刀刃上
猜你喜欢内容
-
如何挑选考研辅导
如何挑选考研辅导回答数有3条优质答案参考
-
心理咨询师收入怎么样
心理咨询师收入怎么样回答数有3条优质答案参考
-
有什么工作
有什么工作回答数有3条优质答案参考
-
韦博国际英语怎么样
韦博国际英语怎么样回答数有3条优质答案参考
-
如何判断需要考研
如何判断需要考研回答数有3条优质答案参考
-
重庆舞蹈学校怎么样
重庆舞蹈学校怎么样回答数有3条优质答案参考
-
机电一体化技术是干什么的
机电一体化技术是干什么的回答数有3条优质答案参考
-
考研辞职如何赔款
考研辞职如何赔款回答数有3条优质答案参考
-
尚孔教育 怎么样
尚孔教育 怎么样回答数有3条优质答案参考
-
南联学校怎么样
南联学校怎么样回答数有3条优质答案参考
















