首页 > 数据库 >oracle 获取表,列注释

oracle 获取表,列注释

时间:2023-04-20 16:07:01浏览次数:41  
标签:comment cursor tablename comments 注释 获取 varchar2 oracle col


前段时间,自己用的表好长,列好多(这是谁设计滴)

所以给自己写了几个方法,贴出来晒晒,供以后使用:

 

获取列的注释

create or replace function get_column_comment(tablename in varchar2,
columnname in varchar2) return varchar2 as
v_comment user_col_comments.comments%type;
begin
          select t.comments into v_comment from user_col_comments t
          where t.table_name =  upper(tablename)
          and t.column_name = upper(columnname);
          return v_comment;
end;

 上边的tablename是列所在表明,上边的columnname是列名

 测试一下

select get_column_comment('user_hn_3g_zgd_list_his','local_mob_times') from dual

 

获取表的注释

create or replace function gettc(tablename in varchar2)
return varchar2 as
v_comment user_tab_comments.comments%type;
cursor tab_cursor(tablename varchar2) is select t.comments from user_tab_comments t where t.table_name = upper(tablename);
begin
       open tab_cursor(tablename);
       loop
            fetch tab_cursor into v_comment;
            exit when tab_cursor%notfound;
            dbms_output.put_line(tablename||' '||v_comment);
       end loop;
       close tab_cursor;
       return v_comment;
end;

 上边的tablename是表名

测试一下

select  gettc('sql_template_set') from dual;

 

 

还有一个自己用着玩滴

-- 用户table 列参数
create or replace function getucc(columnname in varchar2)
return varchar2 as
v_comment user_col_comments.comments%type;
cursor col_cursor(columnname varchar2) is select t.comments from user_col_comments t where t.table_name = upper('user_hn_3g_zgd_list_his') and t.column_name = upper(columnname);
begin
      open col_cursor(columnname);
      loop 
           fetch col_cursor into v_comment;
           exit when col_cursor%notfound;
           dbms_output.put_line(columnname||' '||v_comment);
      end loop;
      close col_cursor;
      return v_comment;
end;

 

 

 

标签:comment,cursor,tablename,comments,注释,获取,varchar2,oracle,col
From: https://blog.51cto.com/u_2465818/6209753

相关文章

  • 这个df数据怎么才能获取到最新的调薪时间,就是薪资最高且时间最早?
    大家好,我是皮皮。一、前言前几天在Python最强王者交流群【群除我佬】问了一个Pandas处理的问题,这里拿出来给大家分享下。看上去不太好理解,其实说白了,就是在工资最高里,再找时间最早的。换句话说就是,这三个人,每个人找工资最高,然后在这个范围里找时间最早就是他的调薪时间。二、实现......
  • oracle 分区
    创建分区--先声明一下:列表分区不支持多列,但是范围分区和哈希分区支持多列。createtablegraderecord--范围分区根据列的值的范围(snovarchar2(10),snamevarchar2(20),dormitoryvarchar2(3),gradeint)partitionbyrange(grade)(partitionfailvalues......
  • oracle 语法备忘录
     --游标cursorobject_cursorisXXX;openobject_cursor;closeobject_cursor;   --引用游标typetype_my_ref_cursorisrefcursor;//refcursormy_ref_cursortype_my_ref_cursor;openmy_ref_cursorforXXXclosemy_ref_cursor;   --触发器createorrepl......
  • jdbc insert数据后获取ID
    有时insert数据,数据ID为自动生成,需要获取ID。 以下就是获取ID的方法:publicstaticStringinsertByID(Stringsql,IDataBaseBeanbean,ArrayList<Object>keyvalueList,ArrayList<Class<?>>classtypeList,SingleDataSourcedatasource)throwsSQLException{ Connectionconn=......
  • 通过python获取SSL证书到期时间
    在前面的文章中曾介绍过如何通过openssl命令获取SSL证书的到期时间:通过zabbix监控ssl证书到期时间。有人反馈实践中这种方式存在缺陷,可能会出现部分域名证书无法获取的情况,报错如下:140323981043600:error:0906D06C:PEM routines:PEM_read_bio:nostartline:pem_lib.c:707:Expe......
  • SqlServer触发器获取变更的数据
    1、Inserted和DeletedInserted表用于存储INSERT和UPDATE语句所影响的行的副本。在一个插入或更新事务处理中,新建行被同时添加到inserted表和触发器表中。Inserted表中的行是触发器表中新行的副本。插入操作Inserted表有数据,Deleted表无数据删除操作Inserted表无数据,De......
  • C# 获取打印机队列的打印任务
    //引入命名空间:usingSystem.Runtime.InteropServices;[DllImport("winspool.drv",CharSet=CharSet.Auto,SetLastError=true)]privatestaticexternboolSetDefaultPrinter(stringprinterName);[DllImport("winspool.drv&quo......
  • jquery 中获取所有选中的checkbox的用法
    评:jquery中获取所有选中的checkbox的用法$("input:checkbox[name='thecheckboxname']:checked")或者$($("table#tbTemplateinput[type='checkbox']"),function(index,element){if($(element).checked){//keepthestate.......
  • Oracle CASE WHEN 用法介绍
    1.CASEWHEN表达式有两种形式 --简单Case函数CASEsexWHEN'1'THEN'男'WHEN'2'THEN'女'ELSE'其他'END--Case搜索函数CASEWHENsex='1'THEN'男'WHENsex='2'THEN'女&......
  • Oracle MySQL Server 拒绝服务漏洞(CVE-2023-21912) 修复
    CVE编号公告标题和摘要最高严重等级受影响的软件CVE-2023-21912OracleMySQLServer拒绝服务漏洞未经身份验证的远程攻击者可通过MySQL协议网络访问MySQLServer,成功利用此漏洞可导致目标MySQLServer挂起或频繁重复崩溃,造成拒绝服务攻击重要MySQLServer<=5.7.41......