我想知道是否有办法通过简单的select语句找出某些列的默认值。尝试了几件事:
SELECT * FROM all_tab_columns WHERE table_name = 'tablename'
但是我看不到列的默认值。不,我不想使用像SQL Plus这样的东西,我需要一个SELECT,猜猜有一些表提供了这些信息吗?
答案 0 :(得分:11)
Select TABLE_NAME, COLUMN_NAME, DATA_DEFAULT
from DBA_TAB_COLUMNS
where TABLE_NAME = 'TABLE_NAME';
替换要查看默认列数据的Table_Name。
答案 1 :(得分:5)
尝试以下查询
Select * From USER_TAB_COLUMNS where TABLE_NAME ='Table Name'
答案 2 :(得分:0)
默认值位于ALL_TAB_COLUMNS的DATA_DEFAULT列中:
SELECT TABLE_NAME, COLUMN_NAME, DATA_DEFAULT
FROM ALL_TAB_COLUMNS
WHERE TABLE_NAME = 'tablename'
答案 3 :(得分:0)
以上示例均不适用于我,但此示例确实有用。关键部分是table_name的“ Upper”。也许特定于我团队的数据库,但是如果您遇到问题,这应该可以解决
SELECT a.column_name "Column",
a.data_default "Default"
FROM all_tab_columns a
WHERE a.table_name = Upper('tablename')