Oracle生成指定表的列名,并前后添加select from
2015-06-30 17:06
387 查看
表的列名比较多的时候,手工一个个的写列名比较麻烦,这个函数可以让人偷偷懒
create or replace function f_GetCols(p_TableName in varchar2/*获取表中所有列名 前后添加select from*/) RETURN varchar2
is
Result varchar2(2000);
v_cnts number;
v_strTabName varchar2(200);
BEGIN
v_strTabName:=upper(p_tablename);
select count(1) into v_cnts from user_tables where table_name=v_strTabName;
if v_cnts>0 then
Result:='select ';
for cr in (select column_name from user_tab_columns where table_name=v_strTabName order by column_id)
loop
Result:=Result||cr.column_name||',';
end loop;
Result:=substr(Result,1,length(Result)-1);
Result:=Result||' from';
else
Result:='表不存在';
end if;
return(Result);
END f_GetCols;
使用方法
select f_GetCols(' 表名')from dual;
create or replace function f_GetCols(p_TableName in varchar2/*获取表中所有列名 前后添加select from*/) RETURN varchar2
is
Result varchar2(2000);
v_cnts number;
v_strTabName varchar2(200);
BEGIN
v_strTabName:=upper(p_tablename);
select count(1) into v_cnts from user_tables where table_name=v_strTabName;
if v_cnts>0 then
Result:='select ';
for cr in (select column_name from user_tab_columns where table_name=v_strTabName order by column_id)
loop
Result:=Result||cr.column_name||',';
end loop;
Result:=substr(Result,1,length(Result)-1);
Result:=Result||' from';
else
Result:='表不存在';
end if;
return(Result);
END f_GetCols;
使用方法
select f_GetCols(' 表名')from dual;
相关文章推荐
- Web系统从Oracle迁移至MySQL
- ORACLE中常用的两种分页语句
- (总结)Oracle 11g常用管理命令(用户、表空间、权限)
- Oracle中in和exists的区别和选择
- oracle求时间差的常用函数
- 11gR2 grid安装最后报错[INS-20802] Oracle Cluster Verification Utility failed
- oracle中trim,ltrim,rtrim函数用法
- Oracle中如何获取系统当前时间
- Oracle时间运算
- 导出遇到 ORACLE 错误 1455:转换列溢出整数数据类型
- oracle函数Lpad与Rpad
- oracle 抛出自定义错误(网上找的例子)
- 清理oracle的归档日志
- Oracle里面的using作用(用于动态sql绑定参数)
- Oracle创建两表关联查询的视图
- Oracle 监听器日志文件过大导致监听异常
- Oracle 短路评估
- 如何安装独立版的CHM(Oracle Cluster Health Monitor)
- jdbc读取新插入Oracle数据库Sequence值的5种方法
- Oracle 字符串处理