2012-09-20 18 views
6

sihirli kullanacağını (belki SYS kullanarak veya değil) -Normal şartlar altında ÇİFT

SQL> select * from dual; 

D 
- 
X 

o kadar Normal şartlar altında (SYS olarak bağlı) -

SQL> alter database close; 
Statement processed. 

SQL> select * from dual; 
ADDR  INDX  INST_ID D 
-------- ---------- ---------- - 
00FA6E50   0   1 X 

Ben DUAL bir olduğunu biliyoruz özel sihirli tablo (vb.) ancak

DB beklemede iken DUAL ile ne farklı? ADDR, INDX, INST_ID beklemede durum nedir?

+0

Daha iyi http://dba.stackexchange.com adresinden sorulabilir. – DCookie

+2

Bir DBA'nın bu sütunların veya programcıların alaka düzeyinin ne olacağını bildiğinden emin değilim !! – Annjawn

cevap

2

Tom Kyte burada oldukça birkaç yıl önce bu soruya cevap mükemmel bir iş yaptı: yardımcı

http://asktom.oracle.com/pls/apex/f?p=100:11:0::::P11_QUESTION_ID:1562813956388

Umut.

+1

Bu gönderiyi gördüm ancak ADDR, INDX, INST_ID sütunlarını ve bunların alaka düzeyini nerede açıkladığını ve bu sütunun neden yalnızca DB Bekleme'de görüneceğini anlamıyorum. Oracle'ın "kara kutuda" bulunan şeylerden sadece bir tanesi. – Annjawn

+0

Bunlar, herhangi bir X $ tablosundaki standart sütunlardır. ADDR, kelimenin tam anlamıyla, söz konusu satırın SGA'da eşlendiği adrestir. INST_ID, örnek kimliğidir. Tek örnek (RAC olmayan) veritabanları için her zaman 1'dir. RAC veritabanları için, 1'den n'ye kadar değişir; burada n, RAC kümesindeki düğümlerin sayısıdır. Ve INDX, bence tüm X $ tablolarını endeksleyen dahili bir dizidir. Dolayısıyla, sistemde n X $ tablo varsa, her X $ 1'den n'ye kadar benzersiz bir değere sahip olacaktır. –