热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

Oracle数据库教程:PL/SQL笔记

PLSQL(procedurallanguagesql):是oracle基于标准SQL语言的扩展,在PLSQL中你可以嵌套sql语句、定义变量、定义常量、使用逻

PL/SQL(procedural language/sql):是oracle基于标准SQL语言的扩展,在PL/SQL中你可以嵌套sql语句、定义变量、定义常量、使用逻

  • 基于以上表myinfo

    ),既然是扩展,当然会使得他的功能更加强大!

    PL/SQL是强大的数据库过程语言!

    重要的是:重要的是PL/SQL紧密的结合在Oracle数据库里面。

    PL/SQL是Oracle数据库使用的三种语言的其中之一,另外两个是SQL和Java。

    功能近似PL/SQL的程序语言和其他关系型数据库:Sybase ASE、Microsoft SQL Server的Transact-SQL,PostgreSQL数据库的PL/pgSQL(模仿PL/SQL)和IBM DB2的SQL PL[1],都符合ISO SQL的SQL/PSM标准。

    ---------------------------------------------------------------------------------------------------

    pl/sql的优点:

    提高应用程序的运行性能、模块化设计、减少网络传输量、提高安全性

    (传统的数据库操作,我们想想:SQL语句写在java程序访问数据库,首先获得连接,编译SQL语句,使得数据库能够认识你的SQL语句,这里每次编译就浪费了一些时间,当数据访问量很大的时候,你的程序性能就比较差了!这里如果我们把某些操作写为一个过程,比如分页、转账过程(功能划分为一个模块,由专人负责维护……)。就可以使得我们的程序性能大大提高,从而数据库操作作为一个模块,当java程序调用时就是调用已经编译的SQL语句,所以在进行程序优化时可以考虑用存储过程进行优化。)

    【当然还有其他有点好处,欢迎补充】

    缺点:

    当需要换数据库时,移植性存在缺陷

    |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||


    PL/SQL编写规范:

    A:

    单行注释:--

    多行注释:/*……*/

    B:

    标识符的命名规范:

    a.定义变量,建议用v_作为前缀, 例:v_sale

    b.定义常量,,建议用c_作为前缀,例:c_rate

    c.定义游标,建议用_cursor作为后缀例:emp_cursor

    d.定义例外,建议用e_作为前缀例:e_error

    -----------------------------------------------------------------------------------

    PL/SQL是以块为基本单位,块分类{主要有存储过程,函数,触发器,包}

    块(block)的介绍:

    上面说了,PL/SQL是以块为基本单位,,我们编写PL/SQL就是在编写块,简单的应用功能,我们可能只需要一个PL/SQL块就可以实现,复杂的功能就需要多个块了,块可以嵌套。

    块由三部分组成:{定义部分、执行部分、例外处理部分},即:

    declare (可选)

    /*声明部分---定义常量、变量。游标、例外、复杂数据类型*/

    begin (必须滴)

    /*执行部分---需要执行的pl/sql语句和SQL语句*/

    exception(可选的)

    /*处理运行的各种错误*/

    end;(必须滴)

    编写一个简单的块先:

    例子,

    例子, 例子,外加显示密码:

    这里都会弹出一个框,让输入就是psw的值,where passwd=&psw

    例外的情况,如果查询不到数据呢?oracle中会抛出异常,

    这里我们就可以使用例外了,Exception


    推荐阅读
    • 前言无论是对于刚入行工作还是已经工作几年的java开发者来说,面试求职始终是你需要直面的一件事情。首先梳理自己的知识体系,针对性准备,会有事半功倍的效果。我们往往会把重点放在技术上 ... [详细]
    • MySQL锁机制详解
      本文深入探讨了MySQL中的锁机制,包括表级锁、行级锁以及元数据锁,通过实例详细解释了各种锁的工作原理及其应用场景。同时,文章还介绍了如何通过锁来优化数据库性能,避免常见的并发问题。 ... [详细]
    • 本文探讨了如何利用SqlDependency执行复杂的SQL查询,并确保在多线程环境下的安全性与效率。 ... [详细]
    • 本文探讨了Web开发与游戏开发之间的主要区别,旨在帮助开发者更好地理解两种开发领域的特性和需求。文章基于作者的实际经验和网络资料整理而成。 ... [详细]
    • 本文将详细介绍如何在ThinkPHP6框架中实现多数据库的部署,包括读写分离的策略,以及如何通过负载均衡和MySQL同步技术优化数据库性能。 ... [详细]
    • 请看|间隔时间_Postgresql 主从复制 ... [详细]
    • 初探Java编程:从入门到实践
      本文旨在为初学者提供Java编程的基础知识,涵盖程序、算法、流程图的概念,以及JDK环境的配置和Eclipse的使用方法。 ... [详细]
    • 安装双硬盘对电脑有何益处?
      面对日益增长的数据存储需求,仅通过更换更大容量的硬盘来解决空间问题并非唯一途径。本文探讨了在同一台计算机上安装两个硬盘的可能性及其带来的多种优势。 ... [详细]
    • 微信小程序中实现位置获取的全面指南
      本文详细介绍了如何在微信小程序中实现地理位置的获取,包括通过微信官方API和腾讯地图API两种方式。文中不仅涵盖了必要的准备工作,如申请开发者密钥、下载并配置SDK等,还提供了处理用户授权及位置信息获取的具体代码示例。 ... [详细]
    • WinSCP: 跨Windows与Linux系统的高效文件传输解决方案
      本文详细介绍了一款名为WinSCP的开源图形化SFTP客户端,该工具支持SSH协议,适用于Windows操作系统,能够实现与Linux系统之间的文件传输。对于从事嵌入式开发的技术人员来说,掌握WinSCP的使用方法将极大提高工作效率。 ... [详细]
    • 本文将详细介绍温莎大学的计算机科学硕士项目,尤其是其应用计算机科学分支,探讨其申请条件、课程设置及为何成为国际学生的热门选择。 ... [详细]
    • 深入解析SSL Strip攻击机制
      本文详细介绍了SSL Strip(一种网络攻击形式)的工作原理及其对网络安全的影响。通过分析SSL与HTTPS的基本概念,探讨了SSL Strip如何利用某些网站的安全配置不足,实现中间人攻击,以及如何防范此类攻击。 ... [详细]
    • 本文介绍了一系列针对iPhone 6s的优化方法,包括系统版本选择、内存管理、软件卸载以及特定设置调整,帮助用户改善设备的运行速度和整体性能。 ... [详细]
    • 掌握Spring MVC中自定义类型转换与格式化的技巧
      近期,在开发一款小程序的过程中遇到了几个Spring MVC接口需要传递时间参数的问题。本文将详细介绍如何利用Java 8 Time API在Spring MVC中实现时间参数的自定义类型转换和格式化。 ... [详细]
    • 本文详细介绍了 Python 中的 with 语句及其背后的上下文管理器机制,从基本概念入手,通过具体示例和原理分析,帮助读者深入理解这一重要的资源管理工具。 ... [详细]
    author-avatar
    我并没有你们想象P的坚强
    这个家伙很懒,什么也没留下!
    PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
    Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有