Overview of Tables
A table is the basic unit of data organization in an Oracle database.
表是Oracle数据库中的数据组织的基本单位。
A table describes an entity, which is something of significance about which information must be recorded.
一个表描述了一个实体,其相关重要信息必须被记录。
A table is either permanent or temporary.
表要么是永久的,要么是临时的。
Relational tables 关系表 |
Relational tables have simple columns and are the most common table type. 关系表具有简单的列,是最常见的表类型。 可以创建如下关系表:
|
||||||
Object tables 对象表 |
The columns correspond to the top-level attributes of an object type. 列对应于对象类型的顶层属性。 |
Columns and Rows
行和列
A table definition includes a table name and set of columns. 表的定义包括表名称和列集。
1、A column identifies an attribute of the entity described by the table. 列标识由表所描述的实体的一个属性。
虚拟列
表可以包含虚拟的列,与非虚拟列不一样,虚拟列不占用磁盘空间。
数据库通过计算一组用户指定的表达式或函数,按需派生出虚拟的列值。
例如虚拟列 income 可能是 salary 列和 commission_pct 列的一个函数。
2、 A row is a collection of column information corresponding to a record in a table. 行是对应于表中某条记录的列信息的集合。 |
create a table
创建表
1、In general, you give each column a column name, a data type, and a width when you create a table. 一般地,当创建一个表时,给每列一个列名称、数据类型、宽度。
2、CREATE TABLE Statements CREATE TABLE employees ( employee_id NUMBER(6) , first_name VARCHAR2(20) , last_name VARCHAR2(25) CONSTRAINT emp_last_name_nn NOT NULL , email VARCHAR2(25) CONSTRAINT emp_email_nn NOT NULL , phone_number VARCHAR2(20) , hire_date DATE CONSTRAINT emp_hire_date_nn NOT NULL , job_id VARCHAR2(10) CONSTRAINT emp_job_nn NOT NULL , salary NUMBER(8,2) , commission_pct NUMBER(2,2) , manager_id NUMBER(6) , department_id NUMBER(4) , CONSTRAINT emp_salary_min CHECK (salary > 0) , CONSTRAINT emp_email_uk UNIQUE (email) ) ;
3、ALTER TABLE Statements ALTER TABLE employees ADD ( CONSTRAINT emp_emp_id_pk PRIMARY KEY (employee_id) , CONSTRAINT emp_dept_fk FOREIGN KEY (department_id) REFERENCES departments , CONSTRAINT emp_job_fk FOREIGN KEY (job_id) REFERENCES jobs (job_id) , CONSTRAINT emp_manager_fk FOREIGN KEY (manager_id) REFERENCES employees ) ; |