大家看一下这个SQL语句有什么问题?

ltz 2002-12-30 09:40:33
select column_name,data_type from user_tab_columns where table_name='tbl';从sql plus中执行返回空,但是执行select column_name,data_type from user_tab_columns 却能返回表tbl的信息,为什么不能接受条件table_name='tbl'呢?
...全文
18 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
laurels_x 2002-12-30
  • 打赏
  • 举报
回复
对,oracle系统视图中类似的表名、列名等等,一律都要用大写的名称。
hrb_qiuyb 2002-12-30
  • 打赏
  • 举报
回复
大小写问题。
beckhambobo 2002-12-30
  • 打赏
  • 举报
回复
也可以这样

SQL> desc student;
Name Type Nullable Default Comments
----- ------------ -------- ------- --------
ID VARCHAR2(10) Y
SNAME VARCHAR2(20) Y
BOOK VARCHAR2(20) Y
liu7537 2002-12-30
  • 打赏
  • 举报
回复
V$ dynamic performance view 里面数据主要是小写,而dba_, user_等static data dictionary 里面的数据主要是大写。
beckhambobo 2002-12-30
  • 打赏
  • 举报
回复
SQL> select column_name,data_type from user_tab_columns where table_name='student';

COLUMN_NAME DATA_TYPE
------------------------------ --------------------------------------------------------------------------------


SQL> select column_name,data_type from user_tab_columns where table_name='STUDENT';

COLUMN_NAME DATA_TYPE
------------------------------ --------------------------------------------------------------------------------
ID VARCHAR2
SNAME VARCHAR2
BOOK VARCHAR2
cyberflying 2002-12-30
  • 打赏
  • 举报
回复
table_name = 'TBL'
要大写
Questking 2002-12-30
  • 打赏
  • 举报
回复
大小写造成的,这样写就可以不区分大小写返回
select column_name,data_type from user_tab_columns where lower(table_name)='tbl'

17,081

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧