CREATE OR REPLACE PROCEDURE tP_JCXX_SECOND(CUR_RESULT OUT sys_refcursor,
TJFS IN VARCHAR2,--统计方式
NSPQ IN VARCHAR2,--片区
NSRZT IN VARCHAR2,--纳税人状态
XXHD IN VARCHAR2,--信息核定
NSRDZDAH IN VARCHAR2,--计算机代码
NSRMC IN VARCHAR2,--纳税人名称
SGY IN VARCHAR2--税管员
) IS
SQL_STATEMENT VARCHAR2(2000);
SQL_STATEMENT1 VARCHAR2(2000);
SQL_STATEMENT2 VARCHAR2(2000);
BEGIN
SQL_STATEMENT1:=
'SELECT A.NSRDZDAH JSJDM,--计算机代码
A.NSRMC NSRMC,--纳税人名称
E.ZCZB ZCZJ,--注册资金
F.HYMX_MC HY,--行业
G.DJZCLX_MC DJZCLX,--登记注册类型
A.SCJYDZ JYDZ,--经营地址
E.SCJYD_DHHM JYDZDH,--经营地址电话
H.NSRZT_MC NSRZT,--纳税人状态
A.GDGGBZ GGH,--是否是共管户
I.SWJG_MC SWJG,--税务机关
J.CZRY_MC SGY--税管员
FROM GY_NSRXX A,HD_NSR_HDXX B,GL_PQ_NSR C,DM_HDXL D,GY_NSRXX_KZ E,
DM_HYMX F,DM_DJZCLX G,DM_NSRZT H,DM_SWJG I,DM_CZRY J
WHERE A.NSRDZDAH=B.NSRDZDAH
AND A.NSRDZDAH=C.NSRDZDAH
AND B.HDXL_DM=D.HDXL_DM
AND A.NSRDZDAH=B.NSRDZDAH
AND A.HYMX_DM=F.HYMX_DM
AND A.DJZCLX_DM=G.DJZCLX_DM
AND A.NSRZT_DM=H.NSRZT_DM
AND A.SWJG_DM=I.SWJG_DM
AND A.ZGSWRY_DM=J.CZRY_DM
AND C.PQ_DM IN (NVL(:NSPQ,C.PQ_DM))
AND B.HDXL_DM IN (NVL(:XXHD,B.HDXL_DM))
AND A.NSRZT_DM IN (NVL(:NSRZT,A.NSRZT_DM))
AND A.NSRDZDAH IN (NVL(:NSRDZDAH,A.NSRDZDAH))
AND A.ZGSWRY_DM IN (NVL(:SGY,A.ZGSWRY_DM))';
SQL_STATEMENT2:='AND B.HDXL_DM LIKE SUBSTR(:TJFS,2)'||'%';
IF(SUBSTR(TJFS,1,2)='03') THEN
SQL_STATEMENT:=SQL_STATEMENT1||SQL_STATEMENT2;
OPEN CUR_RESULT FOR
SQL_STATEMENT using NSPQ,XXHD,NSRZT,NSRDZDAH,SGY,TJFS;
ELSE
SQL_STATEMENT:=SQL_STATEMENT1;
OPEN CUR_RESULT FOR
SQL_STATEMENT using in NSPQ, in XXHD, in NSRZT,in NSRDZDAH,in SGY;
END IF;
--DBMS_OUTPUT.Put(SQL_STATEMENT);
END tP_JCXX_SECOND;
分享到:
相关推荐
在 Oracle 中,使用 Using 语句可以实现动态 SQL 的绑定变量,提高 SQL 语句的灵活性和安全性。本文将对 Oracle 中 Using 用法进行详细的介绍,并提供实际开发的示例和技巧。 一、静态 SQL 和动态 SQL 在 Oracle ...
SQLTracker是一款专为监视使用Oracle数据库的应用程序设计的工具,尤其在Windows 7和Windows 10 64位操作系统上表现出色。该工具的主要目标是帮助系统管理员、DBA(数据库管理员)以及开发人员更好地理解和优化应用...
SQL 中 IN 参数化的用法详解 在 SQL 中,对于 IN 操作符的使用是非常常见的,特别是在 WHERE 子句中规定多个值时。如:select * from A where ID in (1,2,3,4)。但是在实际开发中,我们不可避免地需要处理大量的...
综述了三种主要的集合操作符——UNION、INTERSECT和EXCEPT的特性和使用方法,并举例说明了它们各自的应用场景。 #### 6.6 UNION 深入探讨了UNION操作符的功能和使用技巧,包括如何使用UNION来合并多个查询结果集。...
SQL(结构化查询语言)作为数据库管理的标准语言,Excel则是办公自动化软件中最常用的数据处理工具之一,两者的结合使用可以极大地提高数据分析的效率和准确性。 #### 二、SQL在数据分析中的应用 **1. SQL基础** ...
在这个例子中,我们首先声明一个变量v_sql存储SQL语句,然后使用EXECUTE IMMEDIATE执行SQL,并将结果绑定到变量employee_record。注意,':1'是绑定变量的占位符,USING子句用于传入实际值。 2. PREPARE/EXECUTE...
### SQL语句大全详解 #### 一、概述 SQL(Structured Query Language)是一种用于管理关系...以上是对SQL语句大全的详细介绍,涵盖了常见的SQL语句及其使用方法,旨在帮助数据库开发者和管理员更好地管理和操作数据。
5. **防御策略**:介绍防止SQL注入的方法,如参数化查询、输入验证、存储过程使用、Web应用防火墙等,以及如何在开发过程中实施最佳实践。 6. **应急响应**:讲解在遭受SQL注入攻击后的应对措施,包括日志审查、...
总结起来,"sql操作及公共方法"这个主题涵盖了在C#中使用ADO.NET进行数据库操作的基本概念,以及如何通过创建可重用的公共方法来提升代码质量。理解并熟练掌握这些技术,将使你在开发基于C#的数据库应用程序时更具...
下面将详细介绍如何使用`SqlParameter`以及其在SQL查询执行中的具体作用。 ### C# SqlParameter 参数详解 `SqlParameter`类是用于存储SQL参数的.NET Framework类。在进行数据库操作时,它能有效地防止SQL注入攻击...
在SQL Server中,`Image`数据...以上就是使用C#操作SQL Server中`Image`类型数据的基本方法。理解这些概念和步骤后,你将能够自如地进行读取、写入和其他相关操作。记得在实际开发中根据具体需求进行适当调整和优化。
接下来,我们需要使用ADO.NET库连接到SQL数据库,并将图片的二进制数据插入到`Images`表中: ```csharp using System.Data.SqlClient; // SQL Server连接字符串 string connectionString = "Data Source=your_...
- 在项目中添加一个类,并使用`SqlFunction`特性标记需要被SqlServer调用的方法。 - 示例: ```csharp using System; using Microsoft.SqlServer.Server; public static class Encrypt { [SqlFunction] ...
标题中的"from-sql-to-excel-using-sql-statements"暗示了我们将探讨如何利用SQL语句将数据从SQL Server数据库导出到Excel电子表格。在IT领域,这是一项常见的任务,尤其是在数据分析和报告生成中。SQL(结构化查询...
在上述方法中,我们使用`SqlParameter`对象传递参数。例如: ```csharp SqlParameter param = new SqlParameter("@paramName", SqlDbType.VarChar); param.Value = paramNameValue; ExecuteNonQuery...
代码示例中使用了`SqlCommand`类来定义SQL查询命令,其构造函数接受一个SQL语句作为参数: ```csharp using(SqlCommand command = conn.CreateCommand()) { command.CommandText = "select * from gongneng"; } ``...
通配符攻击是一种利用SQL Server的特定特性来进行DOS攻击的方法,通过精心构造的搜索查询来过度消耗服务器资源,导致正常的服务请求无法得到响应。为了防范这类攻击,开发者应当注意限制搜索查询中的通配符使用,...