返回顶部
首页 > 资讯 > 数据库 >oracle中print_table存储过程实例介绍
  • 469
分享到

oracle中print_table存储过程实例介绍

2024-04-02 19:04:59 469人浏览 独家记忆
摘要

定义 所谓存储过程(Stored Procedure),就是一组用于完成特定数据库功能的sql语句集,该SQL语句集经过 编译后存储在数据库系统中。在使用时候,用户通过指定已经定义的存储过程名字并给出相应

定义

所谓存储过程(Stored Procedure),就是一组用于完成特定数据库功能的sql语句集,该SQL语句集经过
编译后存储在数据库系统中。在使用时候,用户通过指定已经定义的存储过程名字并给出相应的存储过程参数
来调用并执行它,从而完成一个或一系列的数据库操作。

一直以来,觉得Mysql中使用\G参数改变输出结果集的显示方式非常好用,尤其是在命令行界面。但是oracle数据库没有这个功能,今天在搜索到Tom大师的一篇博文时,发现大师用一个存储过程print_table实现了类似这样的功能。只是我们这些凡夫俗子不知道而已,特意整理在此,方便自己或有需要的人以后查看。 


CREATE OR REPLACE PROCEDURE print_table(p_query IN VARCHAR2) 
AUTHID CURRENT_USER 
IS 
 l_thecursor INTEGER DEFAULT dbms_sql.open_cursor; 
 l_columnvalue VARCHAR2(4000); 
 l_status  INTEGER; 
 l_desctbl  dbms_sql.desc_tab; 
 l_colcnt  NUMBER; 
BEGIN 
 EXECUTE IMMEDIATE 'alter session set nls_date_fORMat=''dd-mon-yyyy hh34:mi:ss'' '; 
 
 dbms_sql.parse(l_thecursor, p_query, dbms_sql.native); 
 
 dbms_sql.describe_columns (l_thecursor, l_colcnt, l_desctbl); 
 
 FOR i IN 1 .. l_colcnt LOOP 
  dbms_sql.define_column (l_thecursor, i, l_columnvalue, 4000); 
 END LOOP; 
 
 l_status := dbms_sql.EXECUTE(l_thecursor); 
 
 WHILE ( dbms_sql.Fetch_rows(l_thecursor) > 0 ) LOOP 
  FOR i IN 1 .. l_colcnt LOOP 
   dbms_sql.column_value (l_thecursor, i, l_columnvalue); 
 
   dbms_output.Put_line (RPAD(L_desctbl(i).col_name, 30) 
         || ': ' 
         || l_columnvalue); 
  END LOOP; 
 
  dbms_output.put_line('-----------------'); 
 END LOOP; 
 
 EXECUTE IMMEDIATE 'alter session set nls_date_format=''dd-MON-rr'' '; 
EXCEPTION 
 WHEN OTHERS THEN 
    EXECUTE IMMEDIATE 
    'alter session set nls_date_format=''dd-MON-rr'' '; 
 
    RaiSE; 
END; 
/
您可能感兴趣的文档:

--结束END--

本文标题: oracle中print_table存储过程实例介绍

本文链接: https://lsjlt.com/news/52599.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • oracle中print_table存储过程实例介绍
    定义 所谓存储过程(Stored Procedure),就是一组用于完成特定数据库功能的SQL语句集,该SQL语句集经过 编译后存储在数据库系统中。在使用时候,用户通过指定已经定义的存储过程名字并给出相应...
    99+
    2024-04-02
  • mysql的存储过程介绍
    什么是mysql存储过程?存储程序是被存储在服务器中的组合SQL语句,经编译创建并保存在数据库中,用户可通过存储过程的名字调用执行。存储过程核心思想就是数据库SQL语言层面的封装与重用性。使用存储过程可以较...
    99+
    2024-04-02
  • Oracle存储过程Procedure简单介绍(第一部分)
    我们都知道SQL语言是没有判断和过程控制语句的,而PL/SQL又很好的补充了SQL语言这方面的不足。而存储过程也是一种PL/SQL块,但是存储过程又跟传统的PL/SQL块不一样,存储过程是以命名的方式存储于...
    99+
    2024-04-02
  • C#调用Oracle存储过程方法介绍(附源码)
    C#调用Oracle存储过程的代码如下所示: using System; using System.Collections.Generic; using System.Collect...
    99+
    2024-04-02
  • oracle中存储函数与存储过程的示例
    这篇文章主要介绍了oracle中存储函数与存储过程的示例,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一:存储过程:简单来说就是有名字的pl...
    99+
    2024-04-02
  • MySQL存储过程的查询命令介绍
    如下所示: select name from mysql.proc where db='数据库名'; 或者 select routine_name from informati...
    99+
    2022-05-18
    MySQL 存储过程 查询命令
  • Oracle存储过程案例详解
    创建简单存储过程(Hello World) 为了方便读者简单易懂,我将下面使用到的表复制给大家。 具体表中的数据,请大家自己填写 -- Create table create t...
    99+
    2024-04-02
  • oracle存储过程
    存储过程1、创建create procedure 过程名(变量名 in 变量类型...变量名 out 变量类型...)is//定义变量  注:变量类型后不需要指定大小begin//执行的语句end...
    99+
    2024-04-02
  • SQL存储过程简介
    存储过程概述 存储过程是完成特定功能的一组SQL语句,它是数据库的一种可编程对象,类似于函数 其快速、灵活、安全 系统存储过程 SQL sever 内置的存储过程,存储在master库中,主要用于执行SQL sever的某些功能、...
    99+
    2020-01-05
    SQL存储过程简介
  • spring中JdbcTemplate操作oracle的存储过程实例代码
    目录场景:功能:1.JdbcTemplate调用存储过程(Procedure)不带返回值1.1存储过程1.2代码2.JdbcTemplate调用存储过程(Procedure)带返回值...
    99+
    2023-05-16
    jdbctemplate调用存储过程 oracle存储过程怎么执行 oracle存储过程教程
  • EntityFrameworkCore中执行SQL语句和存储过程的方法介绍
    无论ORM有多么强大,总会出现一些特殊的情况,它无法满足我们的要求。在这篇文章中,我们介绍几种执行SQL的方法。 表结构 在具体内容开始之前,我们先简单说明一下要使用的表结构。 ...
    99+
    2024-04-02
  • mysql存储过程的简介
    小编给大家分享一下mysql存储过程的简介,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!mysql存储过程:首先操作数据库语言S...
    99+
    2024-04-02
  • MySQL存储过程实例讲解
    MySQL存储过程是一组预编译的SQL语句,存储在数据库中,并可以在需要时调用执行。下面是一个MySQL存储过程的实例讲解:假设我们有一个学生表student,包含以下字段:id、name、age、grade。我们想要创建一个存储过程,...
    99+
    2023-08-11
    MySQL
  • oracle中创建存储过程,以及存储过程中调用游标
    CREATE OR REPLACE PROCEDURE aa is   CURSOR prodCombind_cur IS SELECT * FROM proddata...
    99+
    2024-04-02
  • mysql存储过程与存储函数实例分析
    这篇文章主要介绍了mysql存储过程与存储函数实例分析的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇mysql存储过程与存储函数实例分析文章都会有所收获,下面我们一起来看看吧。...
    99+
    2022-11-30
    mysql
  • Oracle存储过程和函数的功能差异及使用技巧介绍
    Oracle存储过程和函数的功能差异及使用技巧 在Oracle数据库中,存储过程和函数是两种重要的数据库对象,它们都可以用来封装SQL语句和业务逻辑,提高数据库操作的效率和安全性。然而...
    99+
    2024-03-03
    函数 oracle 存储过程 sql语句
  • Oracle万能存储过程
     create or replace procedure proc_data_check is    --定义变量    V_...
    99+
    2024-04-02
  • MySQL的存储过程实例分析
    今天小编给大家分享一下MySQL的存储过程实例分析的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一...
    99+
    2024-04-02
  • Sql Server存储过程实例分析
    今天小编给大家分享一下Sql Server存储过程实例分析的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。从存储过程...
    99+
    2023-06-30
  • MySQL 存储过程示例
    两种方法获取返回值 用select DROP PROCEDURE IF EXISTS `getTableById`; CREATE DEFINER = `root`@`localhost` PROCEDURE `getTab...
    99+
    2020-01-20
    MySQL 存储过程示例
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作