我正在尝试编写一个查询,该查询返回数据库中特定表中一列的大小
我正在使用SQL Developer环境,并且是我的新手
我尝试了将我在Internet上找到的内容应用到的简单代码:
CREATE TABLE tab1 (
col1 VARCHAR2(15) PRIMARY KEY,
col2 Number(4) NOT NULL)
select data_type, data_length
from user_tab_columns
where table_name = 'tab1'
and column_name = 'col1';
我希望我的第二个查询能够得到:VARCHAR2
和15
但是我明白了:
no data found
您是否知道我在做什么错?
答案 0 :(得分:3)
您应使用标识符的大写版本:
select data_type, data_length
from user_tab_columns
where table_name = UPPER('tab1') -- 'TAB1'
and column_name = UPPER('col1'); -- 'COL1'
Schema Object Names and Qualifiers
您可以使用带引号或不带引号的标识符来命名任何数据库对象。但是,数据库名称,全局数据库名称和数据库链接名称始终不区分大小写,并且存储为大写。。如果将此类名称指定为带引号的标识符,则使用引号引起来。被默默忽略。
答案 1 :(得分:0)
令人惊奇的是!!谢谢你们 ! 很快再见,下一个问题:D