查看表中列属性的SQL语句
在sqlplus中,desc后面跟上表名,能够显示简要的表创建语法。
下面的SQL语句能够实现类似sqlplus中desc的类似的功能。
select o.obj#,o.name object_name,c.column_id,c.column_name,c.data_type,c.data_length,c.data_precision,c.data_scale,c.nullable
from sys.tab$ t,dba_tab_cols c,sys.obj$ o,sys.user$ u
where o.obj#=t.obj#
and o.name=c.table_name
and c.owner=u.name
and o.owner#=u.user#
and u.name='SCOTT'
and o.name='EMP'
order by obj#,column_id
;
其实,利用oracle自带的DBMS_METADATA包能够很简单的得到对象的DDL语法。 其它第三方工具也能得到对象DDL,比如: TOAD,pl/sql developer等。
比如:
SELECT DBMS_METADATA.get_ddl ('TABLE', table_name, owner)
FROM all_tables
WHERE owner = '&owner' AND table_name = '&NAME'
另外:
SQL> select to_number('1a','xx'),to_char(26,'xx') from dual;
26 1a
SQL>
这是oracle中的十进制和十六进制转化的语句。