11 Copyright © Oracle Corporation, 2002. All rights reserved. Managing Tables 11-2 Copyright © Oracle Corporation, 2002. All rights reserved. Objectives After completing this lesson, you should be able to do the following: • Identify the various methods of storing data • Outline Oracle data types • Distinguish between an extended versus a restricted ROWID • Outline the structure of a row • Create regular and temporary tables • Manage storage structures within a table • Reorganize, truncate, and drop a table • Drop a column within a table 11-3 Copyright © Oracle Corporation, 2002. All rights reserved. Storing User Data Regular table Cluster Partitioned table Index-organized table 11-6 Copyright © Oracle Corporation, 2002. All rights reserved. Oracle Built-in Data Types CHAR(N), NCHAR(N) VARCHAR2(N), NVARCHAR2(N) NUMBER(P,S) DATE TIMESTAMP RAW(N) BLOB, CLOB, NCLOB, BFILE LONG, LONG RAW ROWID, UROWID VARRAY TABLE REF Data type Built-in User-defined Scalar RelationshipCollection 11-10 Copyright © Oracle Corporation, 2002. All rights reserved. ROWID Format • Extended ROWID Format • Restricted ROWID Format OOOOOO BBBBBBFFF RRR Data object number Relative file number Row numberBlock number BBBBBBBB FFFFRRRR Block number Row number File number . . 11-12 Copyright © Oracle Corporation, 2002. All rights reserved. Structure of a Row Database block Row header Column length Column value 11-13 Copyright © Oracle Corporation, 2002. All rights reserved. Creating a Table CREATE TABLE hr.employees( employee_id NUMBER(6), first_name VARCHAR2(20), last_name VARCHAR2(25), email VARCHAR2(25), phone_number VARCHAR2(20), hire_date DATE DEFAULT SYSDATE, job_id VARCHAR2(10), salary NUMBER(8,2), commission_pct NUMBER (2,2), manager_id NUMBER(6), department_id NUMBER(4)) TABLESPACE USERS; 11-17 Copyright © Oracle Corporation, 2002. All rights reserved. Creating a Table: Guidelines • Place tables in separate tablespaces. • Use locally-managed tablespaces to avoid fragmentation. • Use few standard extent sizes for tables to reduce tablespace fragmentation. 11-18 Copyright © Oracle Corporation, 2002. All rights reserved. Creating Temporary Tables • Created using the GLOBAL TEMPORARY clause: • Tables retain data only for the duration of a transaction or session. • DML locks are not acquired on the data. • You can create indexes, views, and triggers on temporary tables. CREATE GLOBAL TEMPORARY TABLE hr.employees_temp AS SELECT * FROM hr.employees; 11-19 Copyright © Oracle Corporation, 2002. All rights reserved. (Average Row Size - Initial Row Size) * 100 Average Row Size Average Row Size * 100 100 - - PCTFREE - - Available Data Space Setting PCTFREE and PCTUSED • Compute PCTFREE • Compute PCTUSED [...]... Obtaining Table Information Information about tables can be obtained by querying the following views: • DBA _TABLES • DBA_OBJECTS 11-35 Copyright © Oracle Corporation, 2002 All rights reserved Summary In this lesson, you should have learned how to: • Distinguish between an extended versus a restricted ROWID • Outline the structure of a row • Create regular and temporary tables • Manage storage structures within... Copyright © Oracle Corporation, 2002 All rights reserved Nonpartitioned Table Reorganization ALTER TABLE hr.employees MOVE TABLESPACE data1; • When a nonpartitioned table is reorganized, its structure is kept, but not its contents • It is used to move a table to a different tablespace or reorganize extents 11-25 Copyright © Oracle Corporation, 2002 All rights reserved Truncating a Table TRUNCATE . NUMBER(4)) TABLESPACE USERS; 11-17 Copyright © Oracle Corporation, 2002. All rights reserved. Creating a Table: Guidelines • Place tables in separate tablespaces. • Use. tablespaces. • Use locally-managed tablespaces to avoid fragmentation. • Use few standard extent sizes for tables to reduce tablespace fragmentation. 11-18 Copyright