Indizes
Fundamentals
Undo Management
  Contents
  Index
Subsections
Tabellen
Storing User Data
- Regular Table
Dies ist die am meisten verwendete Tabellenart.
Ein Datenbankadministrator hat nur wenig Einfluss auf die Speicherung der Datensätze.
- Partitioned Table
Diese Art ermöglicht die Bildung von skalierbaren Applikationen.
Jede Partition kann in unterschiedlichen Tablespaces gespeichert werden.
- Index-Organized Table
Schneller Key-basierter Zugriff.
- Clustered Table
Wird aus einer oder mehreren Tabellen gebildet, die sich den gleichen Datenblock teilen.
Von den vier Tabellentypen wird hier die Regular Table eingehender besprochen.
ROWID
select dummy,rowid from dual;
Tabelle in einem Tablespace erstellen
create table bla ( s1 varchar2(29) ) tablespace testus;
Tabelle zu einem anderen Tablespace verschieben
Das Verschieben einer Tabelle von einem Tablespace in einem anderen sollte nur in Ausnahmefällen erfolgen. Dies kann z.B. notwendig sein, wenn die Performance drastisch sinkt.
Sämtliche Indizes dieser Tabelle werden gelöscht und müssen neu erstellt werden.
alter table bla move tablespace testus;
Anzeige des Tablespace einer Tabelle
describe user_tables;
select table_name, tablespace_name
from user_tables;
Temporäre Tabelle erstellen
Temporäre Tabellen können z.B. für Zwischenberechnungen verwendet werden.
DML Locks werden dafür nicht verwendet.
create global temporary table mein_temp
on commit delete rows as
select * from dual
;
insert into mein_temp values ('3');
select * from mein_temp;
-- Es wird ein Dateinsatz angezeigt.
commit;
select * from mein_temp;
-- Es wurden keine Zeilen ausgewählt
Spalte UNUSED setzen
Eine Tabellenspalte auf UNUSED setzen geht schneller als DROP Spalte.
Dies ist aber als SYS nicht möglich.
create table blabla ( s1 varchar2(29), s2 varchar2(29) );
alter table blabla
set unused column s2 cascade constraints;
describe blabla;
alter table blabla
drop unused columns checkpoint 1000;
alter table blabla
drop columns continue checkpoint 1000;
Anzeige der UNUSED Spalten
Einloggen als User sys.
select * from dba_unused_col_tabs;
select * from dba_partial_drop_tabs;
Anzeige von Informationen zu Tabellen
describe dba_tables;
select * from dba_tables
where table_name = 'DUAL';
select table_name, tablespace_name from dba_tables
where owner = 'SYS';
select object_name, created from dba_objects
where object_name like 'EMPLOYEES';
Indizes
Fundamentals
Undo Management
  Contents
  Index
Stefan Hietel dama.go GmbH, Robert Warnke http://rowa.giso.de