2015-04-02 13:02
ORBADA » Dokumentacja po Polsku » Porady i wskazówki » Oracle

### 5.C.2.1. Szybki COUNT

Każdy kto używał SQL wie, że aby uzyskać liczbę wierszy w tabeli należy wydać polecenie:

    SELECT COUNT(*) FROM "TAB"

Nie każdy jednak wie, że aby polecenie to było bardzo szybkie, trzeba zmobilizować bazę danych by nie sięgała do danych tabeli lecz tylko do indeksu tabeli, np. głównego. Aby to zrobić trzeba posłużyć się "podpowiedzią". Wykonaj poniższe polecenie, a przekonasz się jaka jest różnica szybkości:

    SELECT /*+ INDEX_FFS(TAB) */ COUNT(0) FROM "TAB"

Dodatkowo aby nie pisać tak długiego polecenia można posłużyć się makrem Orbada. W ustawieniach wtyczek odszukaj "Makra SQL". Tam utwórz makro, którego definicja wygląda następująco:
Nazwa makra: `COUNT <table>[ WHERE ...]`
Wyrażenie regularne: `^*COUNT\s+([a-zA-Z_0-9$#]+|".+")?(\s+WHERE\s+(.*))?`
Rozwinięcie makra SQL: `select /*+ INDEX_FFS( $1 )*/ count(0) from $1$2`

W zakładce zapytań wykonaj polecenie:

    COUNT "TAB"

I już!

### 5.C.2.2. Wyzwalacz klucza głównego

Nazywaj sekwencje klucza głównego wg szablonu TABELA_SEQ. Wtedy będziesz mógł szybko utworzyć wyzwalacz, nadający wartość kolumnie klucza głównego, wybierając z zakładki wyzwalaczy opcję "Wyzwalacz klucza głównego"

### 5.C.2.3. Sesje bazy danych

Jeśli schemat/użytkowników do którego się połączyłeś posiada prawa do widoków systemowych: `V$SESSION`, `V$PROCESS`, `V$SESS_IO`, `V$INSTANCE` to będziesz mógł przeglądać sesje bazy danych przy pomocy specjalnego widoku Orbada.

ORBADA » Dokumentacja po Polsku » Porady i wskazówki » Oracle
• © 2007–2015 • Andrzej Kałuża • Powered By DBPAGES • Hostet at •