ORACLE 不能使用变量来作为列名 和表名 一下是个人的一些验证:

 DECLARE
ename1 emp.ename%TYPE ;
TYPE index_emp_type IS TABLE OF VARCHAR2(100) INDEX BY PLS_INTEGER ;
index_emp index_emp_type ;
BEGIN
index_emp(1) := 'e.ename';
SELECT index_emp(1) INTO ename1 FROM emp e WHERE e.empno=7369;
EXECUTE IMMEDIATE 'select ' || index_emp(1) || ' from emp e where e.empno=7369' into ename1 ;
dbms_output.put_line(index_emp(1));
dbms_output.put_line(ename1);
END; DECLARE
x VARCHAR2(100) := 'ename';
y VARCHAR2(100) ;
BEGIN
SELECT x INTO y FROM emp WHERE empno=7369;
dbms_output.put_Line(y);
END; DECLARE
x VARCHAR2(100) := 'ename';
y VARCHAR2(100) ;
BEGIN
EXECUTE IMMEDIATE 'select ' || x || ' from emp where empno=7369' into y ;
dbms_output.put_line(y);
END; SELECT CHR(&1+67) FROM dual ; SELECT &1 FROM emp ; CREATE TABLE test_coloumn (
A NUMBER ,
B NUMBER ,
C NUMBER ,
D NUMBER ,
E NUMBER ,
F NUMBER
); TRUNCATE TABLE test_coloumn ;
SELECT * FROM test_coloumn ;
SELECT CHR(1+67) FROM test_coloumn WHERE a=1 ;
SELECT D FROM test_coloumn WHERE a=1 DECLARE
X NUMBER ;
BEGIN
-- SELECT CHR(1+67) INTO X FROM test_coloumn WHERE a=1 ;
-- DBMS_OUTPUT.put_line(X);
dbms_output.put_line(CHR(1+67));
END;

oracle 不能是用变量来作为列名和表名 ,但使用动态sql可以;的更多相关文章

  1. PowerDesign设置列名与表名的大小写规则

    因为设计的Model是要用到Oracle 11g的,Oracle 11g的表名和列名默认是大写,在设计模型当中小写转大写一直很苦闹,发现PowerDedign可以直接设置,见下文: 打开Tools-- ...

  2. 小白日记41:kali渗透测试之Web渗透-SQL手工注入(三)-猜测列名、表名、库名、字段内容,数据库写入

    SQL手工注入 靶机:metasploitable(低)  1.当无权读取infomation_schema库[MySQL最重要的源数据库,必须有root权限]/拒绝union.order by语句 ...

  3. oracle 中如何查询当前用户可以看到的表名、表对应的所有字段

    前言:利用 oracle 的视图来查询表的相关信息. oracle 查询当前用户下的表名 + 表注释 select t.table_name tableName, f.comments comment ...

  4. sql 修改列名及表名 sp_rename

    因需求变更要改表的列名,平常都是跑到Enterprise manager中选取服务器->数据库->表,然后修改表,这样太麻烦了,查了一下,可以用script搞定, 代码如下: EXEC s ...

  5. oracle分区表彻底删除的办法,处理删不掉的不规则表名

    Oracle分区表彻底删除的办法当对一个不再使用的分区表进行drop后,查询user_tab_partitions视图发现出现如下不规则的分区表表名:SQL> select distinct t ...

  6. SQL-修改表名,列名

    sql 1.sql server修改表名.列名 修改表名:EXEC sp_rename ‘原有表名’, '新表名'; 修改列名:EXEC sp_rename ‘表名.[原有列名]’, ‘新列名' , ...

  7. ORACLE中使用DBMS_SQL获取动态SQL执行结果中的列名和值

    1.获取动态SQL中的列名及类型 DECLARE l_curid INTEGER; l_cnt NUMBER; l_desctab dbms_sql.desc_tab; l_sqltext ); BE ...

  8. SQLSERVER和ORACLE系统表获取表名 列名以及列的注释

    在工作中从数据库取的数据要导出来,但是发现导出的EXCEL中列名都是字段名(英文),为此搜集资料怎么把字段名变为中文名称,而发现ORACLE和SQLSERVER(用的SQLSERVER2008R2)又 ...

  9. oracle存储过程、声明变量、for循环|转|

    oracle存储过程.声明变量.for循环 1.创建存储过程 create or replace procedure test(var_name_1 in type,var_name_2 out ty ...

随机推荐

  1. 排序 permutation

    习题2-6 排序 permutation 用1,2,3……9组成3个三位数abc,def和ghi,每个数字恰好使用一次,要求abc:def:ghi=1:2:3.按照“abc def ghi”的格式输出 ...

  2. Python2+python3——多版本启动和多版本pip install问题

    背景描述: python2版本都知道维护到2020年,目前使用python的很大一部分用户群体都开始改安装并且使用最新版的python3版本了,python2和python3在编程大的层面不曾改变,有 ...

  3. 扫描算法(SCAN)——磁盘调度管理

    原创 上一篇博客写了最短寻道优先算法(SSTF)——磁盘调度管理:http://www.cnblogs.com/chiweiming/p/9073312.html 此篇介绍扫描算法(SCAN)——磁盘 ...

  4. 004---IO模型

    io模型 同步.异步.阻塞.非阻塞概念 同步:发出一个功能调用时,在没有得到结果之前,该调用就不会返回,原地等待 异步:相反,不需要等待 阻塞:调用结果返回之前,当前线程会被挂起,如io操作,只有在得 ...

  5. Angular Elements

    Angular Elements Angular Elements 就是打包成自定义元素的 Angular 组件.所谓自定义元素就是一套与具体框架无关的用于定义新 HTML 元素的 Web 标准. 自 ...

  6. 两组数据的均值是否具有显著差异的T检验

    最近在做分析的时候,遇到了T检验,然而对于没有统计学背景的人来说完全不知如何下手 当然了,遇到问题第一反应就是百度. 果然百度出来了很多链接,当时第一次直接选择了用Excel去做T检验.下面是源数据 ...

  7. zabbix-3.2.3安装

    环境:lapp 操作系统: rhel7.0apache: apache-2.4数据库: postgresql-9.2.10php: php-5.4.16-21zabbix: zabbix-3.2.3 ...

  8. 2016-2017-2 20155325实验二《Java面向对象程序设计》实验报告

    实验二 面向对象程序设计-1 答案截图 码云代码链接 链接1 实验遇到的问题和解决过程 问题1:在plugins里搜索不到JUnitGenerator V2.0只能搜到Generste Teats 问 ...

  9. 监听Entity Framework生成的Sql语句

               Entity Framework为我们提供了很大的方便,但有时候,我们想看看EF生成的Sql语句到底是怎样的,一种方式是我们可以启用Sql Server Profer工具.今天介 ...

  10. mac生成ssh公私匙

    1. cd ~/.ssh/ 2.ssh-keygen 3.id_rsa.pub文件放入git 4.私匙放进jenkins