`

第一个存储过程程序的总结

阅读更多

由于工作的需要,今天开发了有史以来第一个PL/SQL程序,写的是一个存储过程。

功能:根据条件的不同,分别从两个表取得字段,然后把这些这段插入到另一个表里。

现在把遇到的问题总结如下:

  • 尽量避免使用游标,游标效率有点低。
  • 尽量少用IF判断,改用CASE...WHEN来实现
  • 在类型转换的时候,最好不要对表的字段进行转换,应该对变量进行转换。好处就是索引可以使用。
  • 别忘了用dbms_output.put_line加日志。
  • 注意sysdate-1的使用。to_date(to_char(sysdate-1,'DD/MM/YYYY'),'DD/MM/YYYY');
分享到:
评论

相关推荐

    *oracle存储过程总结*oracle存储过程总结*

    - 第一个循环输出1到10,第二个循环输出10到1。 ### 游标操作 1. **游标声明与打开**: - 示例命令: ```sql DECLARE CURSOR c IS SELECT * FROM EMP; v_emp c%ROWTYPE; BEGIN OPEN c; FETCH c INTO v_...

    MySQL实验报告5(存储过程与函数)(1)(1).pdf

    存储过程是一种在数据库中定义并保存起来的可以被调用的子程序。它可以通过一个指定的名字来执行,可以有输入参数和输出参数。在报告中提到了创建了两个存储过程:count_sch5和count_sch2。它们分别用于计算表sch中...

    数据库实验报告-存储过程、触发器

    2. 减少网络流量:调用存储过程只需要发送一次调用命令,而不是每次执行多个SQL语句。 3. 安全性:存储过程可以设置权限,限制用户直接操作数据,增强数据安全性。 4. 代码重用:存储过程可以被多次调用,降低代码...

    c# 调用存储过程的总结

    在C#中,调用存储过程是数据库操作中常见的任务,尤其在处理复杂逻辑或大量数据更新时。本文档将详细介绍如何使用C#连接到数据库并...通过以上步骤,我们可以安全、高效地在C#应用程序中调用和交互数据库的存储过程。

    sysbase 存储过程实例

    1. **性能提升**:存储过程是预编译的,这意味着它们在第一次执行时会被分析并转化为可执行代码存储在数据库中。之后再次执行时,可以直接使用已编译的版本,提高了执行效率。 2. **本地数据访问**:由于存储过程和...

    数据库方面存储过程教程

    当第一次创建存储过程时,数据库服务器会对其进行编译,之后每次调用时都会使用已编译的版本,从而显著提高了执行效率。存储过程可以接受输入参数,并返回输出结果或状态值,使得它可以灵活地与其他应用程序集成。 ...

    dapper的调用各种存储过程的方法

    `ExecuteScalar()` 方法返回的是存储过程的第一行第一列的值,非常适合获取存储过程的返回值。 三、返回结果集合的存储过程 对于返回结果集的存储过程,我们可以使用 Dapper 的查询功能将其转换为强类型列表。以下...

    存储过程在企业中的应用:第一讲 存储过程简介

    ### 存储过程在企业中的应用:第一讲 存储过程简介 #### 一、存储过程概述 存储过程是数据库中预编译的一组SQL语句集合,可以在数据库服务器上执行,以完成特定功能。存储过程是数据库系统的重要组成部分,在企业...

    SQLSERVER存储过程大总结.doc

    - **性能提升**:存储过程在第一次执行时会被编译,并缓存其执行计划,后续调用时可以直接使用已编译的计划,从而提高执行速度。 - **安全性**:存储过程可以限制用户的数据库访问权限,只允许执行特定的操作。 - **...

    MySql 分页存储过程以及代码调用

    总结来说,MySQL的分页存储过程提供了一种高效、可复用的方式来处理分页查询,减少了直接使用OFFSET可能导致的性能问题。通过创建存储过程并在应用程序中调用,我们可以更好地控制分页逻辑,提高查询速度,提升用户...

    oracle的存储过程如何返回结果集

    存储过程的一个常见应用场景是返回结果集(Record Set),这有助于提高应用程序的性能与响应速度。本文将详细介绍Oracle存储过程如何返回结果集的方法,并通过具体的例子进行说明。 #### 二、存储过程返回结果集的...

    不通过写SQL存储过程,在程序中实现存储过程分页!!

    总结来说,不通过SQL存储过程在程序中实现分页是一种可行且有优势的方法,它提供了更好的代码可读性、可测试性和跨平台兼容性。然而,对于大数据量的场景,需要注意优化查询性能,以避免内存压力和不必要的性能损失...

    oracle存储过程加密

    WRAP 是一个命令行工具,可以用来加密存储过程、函数等PL/SQL代码。下面详细介绍如何使用WRAP工具来进行加密: - **步骤1:设置环境变量** 首先,需要设置`NLS_LANG`环境变量来指定字符集。例如: ``` D:>...

    Oracle调用存储过程总结

    // 设置第一个输入参数 cstmt.setString(2, "TestOne"); // 设置第二个输入参数 cstmt.execute(); // 执行存储过程 } catch (Exception e) { e.printStackTrace(); } finally { if (cstmt != null) { cstmt....

    MYSQL分页存储过程

    存储过程首先构造一个包含LIMIT子句的新SQL语句,然后使用`PREPARE`语句准备这个动态SQL,接着设置偏移量`@s`为`(total - 1) * 20`,执行动态SQL,并最后释放预处理语句资源。 #### 使用存储过程 调用此存储过程时...

    VB6.0 调用存储过程的例子(方法一)

    本篇将详细解释一个具体的示例,通过VB6.0来调用一个名为`ADOTestRPE`的存储过程,并测试其返回值、输入参数以及输出参数。 #### 一、准备工作 为了实现这个功能,我们需要准备以下几个组件: 1. **连接对象**:...

    第八单元 存储过程和触发器

    总结一下,存储过程和触发器是SQL Server数据库中的核心工具,它们提供了一种有效管理和控制数据的方式。理解并熟练运用这两者,将有助于提升数据库设计和开发的专业水平。通过第八单元的学习,你将能够掌握创建、...

    在.NET中调用Oracle存储过程经验总结.doc

    接下来,我们将使用C#和OracleClient来调用第一个存储过程。 ```csharp using System; using Oracle.ManagedDataAccess.Client; class Program { static void Main() { string connectionString = "DataSource=...

    java中存储过程的使用

    接着创建了第一个存储过程`sp_test`,该过程用于向`BOOK`表中插入一条记录。存储过程定义如下: ```sql CREATE OR REPLACE PROCEDURE sp_test ( spbookId IN NUMBER, spbookName IN VARCHAR2, sppublishHouse IN...

    第8章 存储过程、函数和包.ppt

    如果需要删除一个存储过程,使用`DROP PROCEDURE`语句,而重新编译则需要`ALTER PROCEDURE COMPILE`。 **存储函数** 与存储过程类似,但函数必须有返回值,并且其返回类型在定义时指定。函数通常用于执行计算或返回...

Global site tag (gtag.js) - Google Analytics