zoukankan      html  css  js  c++  java
  • 使用SQL存储过程有什么好处 用视图有什么好处

    随便胡乱说几点,大家补充一下。
    1。预编译,已优化,效率较高。避免了SQL语句在网络中传输然后再解释的低效率。
    2。如果公司有专门的DBA,写存储过程可以他来做,程序员只要按他提供的接口调用就好了。这样分开来做,比较清楚。
    3。修改方便。嵌入在程序中的SQL语句修改比较麻烦,而且经常不能肯定该改的是不是都改了。SQLSERVER上的存储过程修改就比较方便,直接改掉该存储过程,调用它的程序基本不用动,除非改动比较大(如改了传入的参数,返回的数据等)。
    4。会安全一点。不会有SQL语句注入问题。
     
    当然,也有缺点。特别是业务逻辑比较复杂时,全用存储过程来写,估计也累的够呛。 

    ■SQL存储过程执行起来比SQL命令文本快得多。当一个SQL语句包含在存储过程中时,服务器不必每次执行它时都要分析和编译它。 

    ■调用存储过程,可以认为是一个三层结构。这使你的程序易于维护。如果程序需要做某些改动,你只要改动存储过程即可 

    ■你可以在存储过程中利用Transact-SQL的强大功能。一个SQL存储过程可以包含多个SQL语句。你可以使用变量和条件。这意味着你可以用存储过程建立非常复杂的查询,以非常复杂的方式更新数据库。 

    ■最后,这也许是最重要的,在存储过程中可以使用参数。你可以传送和返回参数。你还可以得到一个返回值(从SQL RETURN语句)。 

    (1)安全性。使用视图隐藏了数据的来源。   
    (2)方便性。在多表连接查询时,可以使用视图提高效率。  
       
    你用了视图后,你更改元数据如,表名,列名,那你就只需要改视图的代码,而不需要改程序! 
    如果你要经常对几个表join查询,那你做成视图,用的时候只要select   *   from   view就行了!

  • 相关阅读:
    Android中的Prelink技术
    Android 性能分析工具之 ARM Streamline
    Android之Systrace
    学习资源收藏夹
    Linux利器之perf(火焰图)
    Linux程序Segmentation fault (core dumped)
    C++编译器、链接器工作原理
    react使用redux
    Mac更新node版本和npm版本
    Nuxt引入axios;AXIOS的模块化封装
  • 原文地址:https://www.cnblogs.com/jianz/p/5234257.html
Copyright © 2011-2022 走看看