【转】dcba的文章:Oracle的SET UNUSED COLUMN操作到底做了什么?
Jun 07, 2016 pm 03:33 PM我们先来搞一个测试, 将其中的一个列设为UNUSED: SQL DESC T_FID Name Null? Type - COL1 NUMBER COL2 NUMBER COL3 NUMBER SQL ALTER TABLE T_FID SET UNUSED (COL3); Table altered. SQL alter system checkpoint; System altered. 然后我们去查COL$表中的
我们先来搞一个测试, 将其中的一个列设为UNUSED:
SQL> DESC T_FID
Name Null? Type
———————– ——– ——-
COL1 NUMBER
COL2 NUMBER
COL3 NUMBER
SQL> ALTER TABLE T_FID SET UNUSED (COL3);
Table altered.
SQL> alter system checkpoint;
System altered.
然后我们去查COL$表中的三列(COL#,SEGCOL#,NAME), 看看值是什么?
在这儿为了方便, 我就用AUL/MyDUL
的DESC命令去看了
AUL> desc alex.t_fid
Storage(OBJ#=7641 OBJD=7641 TS=2 FILE=3 BLOCK=1529 CLUSTER=0)
No. SEQ Column Name Type
— — —————————– —————-
1 1 COL1 NUMBER
2 2 COL2 NUMBER
0 3 SYS_C00004_05092817:31:11$ NUMBERAUL> UNLOAD TABLE alex.t_fid;
2005-09-28 17:32:40
Unload OBJD=7641 FILE=3 BLOCK=1529 CLUSTER=0 …
9,8,7
2005-09-28 17:32:40
从这儿可以看到, SET UNUSED时将一个列的名字换一下, 此外还将这个列的显示顺序的值设为0, 原来为3.
虽然Oracle不提供反向操作,但实际上原来的数据还存在, 不提供的原因可能是因为不能保证not null和其他的约束吧.

Article chaud

Outils chauds Tags

Article chaud

Tags d'article chaud

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Fonction pour calculer le nombre de jours entre deux dates dans Oracle

Combien de temps les journaux de la base de données Oracle seront-ils conservés ?

L'ordre des étapes de démarrage de la base de données Oracle est

Comment utiliser l'intervalle dans Oracle

Exigences de configuration matérielle du serveur de base de données Oracle

Comment déterminer si deux chaînes sont contenues dans Oracle

Comment voir le nombre d'occurrences d'un certain caractère dans Oracle

De quelle quantité de mémoire Oracle a-t-il besoin ?
