oracle 游标取字段名称,Oracle使用游标查询指定数据表的所有字段名称组合而成的字符串...
应用场合:参考网上查询数据表的所有字段名代码,使用游标生成指定单个表的所有字段名跟逗号组成的用于select 逗号隔开的字段名
应用场合:参考网上查询数据表的所有字段名代码,,使用游标生成指定单个表的所有字段名跟逗号组成的用于select 逗号隔开的字段名列表 from字符串等场合。
查询结果输出如下:
当前数据表TB_UD_USER的字段列表字符串为
AH,BIRTHPLACE,BM,CELLPHONE,CJGZRQ,DEPARTMENT2,DJJID,GZCX,GZKH,GZSFZH,HJDZ,HYZK,ID,JHRQ,JTZZ,LAFX_LD,LJDZ,LLY,LXDH,NAME,NXDH,POLICENUMBER,RESERVE1,RESERVE10,RESERVE9,SCCP,SEX,SFJH,SFQBY,SFZ,SPJB,YL_22,ZJ,ZW,ZZMM
当前数据表TB_UD_USER查询所有记录语句为
select AH,BIRTHPLACE,BM,CELLPHONE,CJGZRQ,DEPARTMENT2,DJJID,GZCX,GZKH,GZSFZH,HJDZ,HYZK,ID,JHRQ,JTZZ,LAFX_LD,LJDZ,LLY,LXDH,NAME,NXDH,POLICENUMBER,RESERVE1,RESERVE10,RESERVE9,SCCP,SEX,SFJH,SFQBY,SFZ,SPJB,YL_22,ZJ,ZW,ZZMM from TB_UD_USER
详细脚本代码如下:
--Oracle使用游标查询指定数据表的所有字段名称组合而成的字符串
declare
mytablename NVARCHAR2(200):='TB_UD_USER'; --定义要查询的数据表名称变量
mystring NVARCHAR2(1000):=' '; --定义要输出的字段名称列表字符串变量
selstring VARCHAR2(2000):=' '; --定义要输出的查询语句字符串变量
cursor mycursor is --定义游标
select distinct TABLE_COLUMN.*,TABLE_NALLABLE.DATA_TYPE,TABLE_NALLABLE.NULLABLE from (select distinct utc.table_name table_name, utc.comments table_comments, ucc.column_name column_name, ucc.comments column_comments from user_tab_comments utc, user_col_comments ucc where utc.table_name = ucc.table_name and utc.table_name not like '%_B' and utc.table_name not like '%_Z' and utc.table_name not like '%1%') TABLE_COLUMN, (select distinct table_name, column_name, nullable, DATA_TYPE from user_tab_cols where table_name not like '%_B' and table_name not like '%_Z' and table_name not like '%1%') TABLE_NALLABLE where TABLE_COLUMN.column_name = TABLE_NALLABLE.column_name and TABLE_COLUMN.TABLE_NAME = TABLE_NALLABLE.table_name and TABLE_COLUMN.TABLE_NAME=mytablename order by TABLE_COLUMN.TABLE_NAME,TABLE_COLUMN.column_name;
myrecord mycursor%rowtype; --定义游标记录类型
Counter int :=0;
begin
open mycursor; --打开游标
if mycursor%isopen then --判断打开成功
loop --循环获取记录集
fetch mycursor into myrecord; --获取游标中的记录
if mycursor%found then --游标的found属性判断是否有记录
begin
--如果是第一个字段
if(mystring=' ') then
mystring:=myrecord.column_name;
else
mystring:=mystring||','||myrecord.column_name;
end if;
end;
else
begin
dbms_output.put_line('当前数据表'||mytablename||'的字段列表字符串为');
dbms_output.put_line(mystring);
selstring:='select '||mystring||' from '||mytablename;
dbms_output.put_line('当前数据表'||mytablename||'查询所有记录语句为');
dbms_output.put_line(selstring);
exit;
end;
end if;
end loop;
else
dbms_output.put_line('游标没有打开');
end if;
close mycursor;
end;
本文永久更新链接地址:
本文原创发布php中文网,转载请注明出处,感谢您的尊重!
oracle 游标取字段名称,Oracle使用游标查询指定数据表的所有字段名称组合而成的字符串...相关推荐
- mysql中通过sql语句查询指定数据表的字段信息
mysql数据库在安装完成时,自动创建了information_schema.mysql.test这三个数据库.其中,information_schema记录了创建的所有数据库的相关信息,因此可以 ...
- MySQL数据通过SQL查询指定数据表的字段名及字段备注
MySQL数据通过SQL查询指定数据表的字段名及字段备注 SELECT COLUMN_NAME,COLUMN_COMMENT FROM INFORMATION_SCHEMA.Columns WHERE ...
- mysql 字段操作_Mysql:数据库操作、数据表操作、字段操作整理
mysql 登录本机 mysql -u root -p password 数据库操作 创建数据库 命令:create database 例如:mysql> create database xhk ...
- 站内搜索(ELK)之数据表字典类型字段的索引思路
数据表字典类型的字段,如人员表中的"性别".流程表中的"处理状态",此类字段中的值高度重复,不建议放到可检索的索引字段中,原因如下: 若数据表字典类型字段的值索 ...
- 【MySQL】根据数据表中日期字段查询某个月每一天的数据量?查询数据表中所有日期每天的数据量?近三天每天数据量?
前提这个table有一个日期字段date_time之类的 1.根据数据表中日期字段查询某个月每一天的数据量 如果要获取8月的数据,可以这么写: SELECT count(*), DATE_FORMAT ...
- Oracle使用游标查询所有数据表备注
功能作用:应用对应的SQL语句,能方便快速的查询Oracle数据库指定用户的所有用户表说明,快速知道每个数据表是做什么的,方便写文档和方案. 运行环境:搭建好Oracle数据库,并使用PQ/SQL D ...
- oracle查表字段长度,oracle中查询某张表中的字段名,字段类型,字段长度等信息...
oracle中查询某张表中的字段名,字段类型,是否为空,字段长度等信息 --更改某张表的字段类型长度 alter table bill_info modify IDCARD VARCHAR2 (30) ...
- access vba表字段_【Access】创建数据表并新增字段
时 间:2016-08-02 13:29:20 作 者:摘 要:用代码创建数据表并新增字段 正 文: 在DAO中,可以通过CreateTableDef方法在数据库中创建新的数据表,其具体的语法格式如下 ...
- db2查询字段备注_通过逐浪数据精灵管理sqlserver数据表备注以及字段说明
通过逐浪数据精灵管理sqlserver的数据表备注以及字段说明备注(附脚本方法) 基本介绍 逐浪数据精灵,是由逐浪软件团队提供的生成态产品,可以快速的方便的管理数据表,目前对商业用户开放. 管理数据库 ...
- MySQL修改数据表中的字段名
MySQL修改数据表中的字段名 在一张数据表中只能设置一个唯一名称的字段名.在同一张数据表中,不能出现两个名称完全相同的字段名. 因此,数据库系统可以通过字段名来区分数据表中的不同字段. 在MySQL ...
最新文章
- python 调用 so 库 需要注意的地方
- 设置LD_LIBRARY_PATH不起作用解决
- java trie实现
- json与对象的互相转换
- 加密和解密盐的使用_码农吐糟面试官:居然问我md5是对称加密还是非对称,故意的吧?...
- java.lang.NoClassDefFoundError: org/apache/log4j/Priority的问题解决
- Fresco几处不太好的地方
- CentOS7镜像安装与下载
- WordPress模板制作教程
- 进程同步问题(二)——信号量机制
- windows常用快捷命令大全总结
- 1123581321递归算法java_【python 2】python 进阶
- java 输入一个时间,获取当前周的周一以及周五时间【自然周】
- Android5.0后外置SDCard读写
- UNIX网络编程:卷2-读书笔记
- 【codeforces 794B】Cutting Carrot
- 高速高精度直线电机模组运输存放及安装维护的注意事项
- 雷电模拟器的下载、安装与使用
- ios 融云 重写对话列表_iOS集成融云SDK part 1 小记
- 大型场地投影仪的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
热门文章
- JavaScript强化教程 —— 资源打包工具的使用及资源的异步加载处理
- IOS快速集成下拉上拉刷新
- 单机使用tungsten 同步mysql数据到mongodb
- 选工作是一个纠结而又痛苦的过程
- SpringCloud微服务(02):Ribbon和Feign组件,实现服务调用的负载均衡
- 机器学习系列-tensorflow-03-线性回归Linear Regression
- Python_代码练习_写一个判断是否为小数的函数
- PHP连接 SQLSERVER 注意事项(经典中的经典)
- java jtable 自动高度,自动调整JTable中行的高度
- python 映射网络驱动器_用Delphi实现网络驱动器的映射和断开