SELECT table_name,column_name,data_length FROM all_tab_columns WHERE table_name='A' AND column_name IN ('COL1','COL2','COL3');
SELECT data_type,char_col_decl_length FROM USER_TAB_COLUMNS WHERE TABLE_NAME='' AND COLUMN_NAME='';
如果有N(N>=2)个用户都拥有名为A的表,则必须同时过滤用户。 SELECT table_name,column_name,data_length FROM all_tab_columns WHERE owner=YOUR_USER_NAME table_name='A' AND column_name IN ('COL1','COL2','COL3');如果只想查自己拥有的列的情况,则直接使用: SELECT table_name,column_name,data_length FROM user_tab_columns WHERE table_name='A' AND column_name IN ('COL1','COL2','COL3');
to :suiziguo 你的正解, 但是还有个小问题想再请教一下你,我用table_name='A' 没办法过滤,因为我查询出的表名是这样的“BIN$C6wCFIFiQk2mfQeEWqcF9g==$0” 感觉象乱码,这是怎么回事?
length('fffffffffff');--字符数
lengthb('rrrrrrrrr');--字节数
WHERE table_name='A' AND column_name IN ('COL1','COL2','COL3');
SELECT data_type,char_col_decl_length FROM USER_TAB_COLUMNS WHERE TABLE_NAME='' AND COLUMN_NAME='';
SELECT table_name,column_name,data_length FROM all_tab_columns
WHERE owner=YOUR_USER_NAME table_name='A' AND column_name IN ('COL1','COL2','COL3');如果只想查自己拥有的列的情况,则直接使用:
SELECT table_name,column_name,data_length FROM user_tab_columns
WHERE table_name='A' AND column_name IN ('COL1','COL2','COL3');
但是还有个小问题想再请教一下你,我用table_name='A' 没办法过滤,因为我查询出的表名是这样的“BIN$C6wCFIFiQk2mfQeEWqcF9g==$0” 感觉象乱码,这是怎么回事?
这个是已经回收站里已经删除的表。purge user_recyclebin;清空回收站。