`

报表SQL存储过程开发中十条军规

阅读更多


报表SQL存储过程的特点:

通过一组变量作为输入参数,根据行控制变量的不同,循环查询,将每个查询的结果值保存到变量里面,够一组了,插入临时表(结果表),如此反复,直到循环结束。最终查询临时表,返回一个结果集的游标。

报表SQL存储过程十条军规:

1、存储过程中要尽可能少的定义变量,能复用就复用。

2、存储过程中两个列相互赋值、或者是变量给临时表中插入值的时候要注意两个数据类型定义要完全一致。

3、存储过程中临时表中的列名最好不要和存储过程中的变量名重名,否则,出现问题很难调试发现。

4、存储过程要注意循环条件的控制、对没有分组的规律的要创造出一些规律。对于多层循环要注意循环开关控制。

5、结果集最好用临时表保存,在插入结果集到临时表的时候,不要commit。否则临时表会清空甚至被drop掉。

6、存储过程语句一般来说越少越好,循环体中的SQL要反复优化,以减少表的扫描次数为终极目标,这样一般能获取更好的性能。

7、在用sum的时候,一定要注意对null值进行处理。比如为null的时候给一个默认值0。

8、在插入字符串数据的时候,一定要注意:空格、空串、null的区别,在适当的时候选择适当的值插入。

9、机器编号应该根据程序循环自动生成,对于多层嵌套循环的存储过程,内外层之间的逻辑关系要注意。比如内层循环的所得记录只求和为外层循环记录,所有外层循环的记录求和为合计行值。那么在处理的时候要通过变量记录每次外层循环的一些参数,以便求和方便。

10、尽可能少的减少嵌套循环的次数,将循环次数多的细的放到最内层。游标用完后要关闭。

分享到:
评论

相关推荐

    SQL存储过程试题及答案

    SQL存储过程是数据库中的一种程序单元,能够完成特定的数据库操作。今天,我们将讨论三道关于SQL存储过程的试题,这些试题涵盖了存储过程的创建、调用和参数传递等方面。 1. 创建分数存储过程 首先,让我们创建一...

    C# winform调用SQL存储过程-菜鸟入门 详细注释

    内容概要:简单的C# winform调用存储过程实例,创建存储过程入参,通过SqlConnection对象和SqlCommand对象调用存储过程,获取存储过程的出参并显示出来,详细代码注释,希望对用到C#调用存储过程的小伙伴有帮助 ...

    U8UAP开发报表设置方案——存储过程

    以下是一个详细的步骤指南,帮助初学者理解如何在U8UAP中通过存储过程开发报表。 首先,你需要进入SQL管理控制器,这通常是用来管理和执行SQL语句的地方。找到相应的程序并双击打开,接着输入密码以登录到服务器。...

    SqlServer存储过程及调试指南

    1. 存储过程概念:存储过程是一组为完成特定功能的SQL语句集,这些语句经过编译后存储在数据库中,供用户通过指定存储过程名和参数(如有)来执行。存储过程被称作数据库中的重要对象,对于设计良好的数据库应用程序...

    SQL 存储过程发送HTTP请求

    - **存储过程**:是一种预编译的SQL代码段,存储在数据库服务器上,并可以在应用程序中通过调用执行。 - **HTTP请求**:超文本传输协议(HTTP)是互联网应用广泛使用的协议之一,用于客户端与服务器之间进行通信的...

    SQL存储过程SQL存储过程SQL存储过程

    对于同一个针对数据数据库对象的操作,如查询修改,如果这一操作所涉及到的Transaction-SQ 语句被组织成一存储过程,那么当在客户计算机上调用该存储过程时,网络中传送的只是该调用语句,否则将是多条 SQL 语句从而...

    用友UAP报表存储过程开发总结

    根据提供的文档信息,本总结将围绕用友UAP报表的二次开发过程,特别是针对SQL Server存储过程的编写以及报表中数据权限控制和过滤条件的实现进行详细的知识点阐述。 ### 用友UAP报表二次开发概述 用友UAP报表是...

    SQL Server中存储过程比直接运行SQL语句慢的原因

    SQL Server 中存储过程比直接运行 SQL 语句慢的原因 在 SQL Server 中,存储过程比直接运行 SQL 语句慢的原因是 Parameter sniffing 问题。Parameter sniffing 是指 SQL Server 在执行存储过程时,使用参数的统计...

    用友U8自定义报表使用存储过程时,使用系统的分组和小计、累计、合计

    在用友U8中,自定义报表可以使用存储过程来生成报表,而不需要编写复杂的SQL语句。存储过程可以根据用户的输入参数来生成报表,而用户可以根据需要来设置报表的条件和格式。 使用存储过程的优点是可以生成复杂的...

    Sql Server 存储过程的导出导入.doc

    在SQL Server中,存储过程是一种预编译的SQL语句集合,它允许开发人员封装一组复杂的操作,并在需要时重复调用。存储过程对于数据库管理、数据处理和性能优化具有重要意义。本文主要介绍如何在SQL Server中导出和...

    在SQL存储过程中进行参数数组Array Parameter的处理函数

    在SQL Server中,存储过程是预编译的SQL语句集合,它们允许开发人员封装复杂的数据库操作,并且可以接受输入参数来实现灵活的数据处理。在某些情况下,我们需要一次性处理多个值,而不是单个参数,这就是参数数组...

    SQL SERVER数据库开发之存储过程应用.rar

    在SQL Server数据库开发中,存储过程是至关重要的一个部分,它是一种预编译的SQL语句集合,可以被多次调用,以提高数据库操作的效率和安全性。本教程旨在深入探讨存储过程在SQL Server中的应用,帮助开发者更好地...

    润乾报表调用oracle存储过程案例说明

    在实际的业务场景中,有时我们需要调用数据库中的存储过程来获取或处理数据,本篇将详细介绍如何在润乾报表中调用Oracle存储过程。 首先,我们要在Oracle数据库中创建存储过程。以下是一个简单的存储过程示例,名为...

    sqlserver存储过程解密工具

    SQL Server存储过程的加密通常是在开发或部署过程中,为了保护知识产权、防止未授权修改或者增加安全性而进行的。然而,在某些情况下,比如接手他人项目、排查问题或审计时,可能需要查看存储过程的原始代码。这时,...

    sql server2008轻松编写t-sql存储过程

    T-SQL存储过程是一组预编译的SQL语句集合,它们被存储在数据库中,并可以通过一个名称来调用。存储过程可以包含复杂的业务逻辑,执行多个操作,如数据检索、更新等,并且可以接收输入参数、返回输出参数。 ##### ...

    SQLServer存储过程调用WebService

    ### SQL Server 存储过程中调用 WebService 的实现方法 #### 一、引言 在企业级应用开发中,Web Service 作为一种标准的接口技术,被广泛用于不同平台之间的服务交互。而在 SQL Server 数据库中直接调用 Web ...

    SQLServer存储过程在系统开发中的应用

    ### SQL Server 存储过程在系统开发中的应用 #### 概述 在现代数据库系统开发过程中,SQL Server 存储过程被广泛应用于提高系统性能、简化应用程序开发以及增强安全性等方面。存储过程是一种预编译的SQL脚本,它...

    原创sql存储过程函数范例

    原创sql存储过程函数范例,一是为了自己方便查找,今天到公司因为没有我保存的一些范例,一个简单的例子写了半个小时,如果有范例直接套几分钟肯定搞定,所以索性上传到CSDN上,何时何地都能找到我的范例了。...

Global site tag (gtag.js) - Google Analytics