我有一个表,用任何工具都可以创建的那种
查询的时候普通的 select * 没有问题
然后我加上别名,就出问题比如:
select * from JT_USERMANAGER 这样一点问题没有 select t.user_id from JT_USERMANAGER t 这样就报标示符无效
select user_id from JT_USERMANAGER 这样也报标示符无效只有这样 select t."user_id" from JT_USERMANAGER t就这么个表,但是别的表就没事!!!!!什么问题呢?我就纳闷了
查询的时候普通的 select * 没有问题
然后我加上别名,就出问题比如:
select * from JT_USERMANAGER 这样一点问题没有 select t.user_id from JT_USERMANAGER t 这样就报标示符无效
select user_id from JT_USERMANAGER 这样也报标示符无效只有这样 select t."user_id" from JT_USERMANAGER t就这么个表,但是别的表就没事!!!!!什么问题呢?我就纳闷了
这样你在select也必须使用"user_id"
如果不加双引号则oracle把它转化为大写,在表中找不到该列
你建表的时候,那字段加了双引号,所以需要引用时加双引号
create table t("id" varchar2(10));
SQL> select * from t; --正确
id
----------
SQL> select id from t; --报错,无效定义
select id from t
ORA-00904: "ID": invalid identifier
SQL> select "id" from t; --正确
id
----------
SQL>