六、總計
1、 查詢其他使用者的表
a) 其他使用者的表不屬於本使用者的空間
b) 如果要查詢其他使用者下的表,要使其他使用者的使用者名稱作為字首。
i. select * from userb.employees;
ii. select * from usera.employees;
2、 default值或者是偽列都是非法的
a) 執行insert操作時,可以為其指定預設值
b) 值、表示式和sql語句都可以作為預設值
c) 其他的列名
d) 預設值的型別必須和該列的型別一致
create table hire_dates (hire_date date default sysdate);
3、 建立表
a) 語法
create table dept(deptno number(2),
dname varchar2(14),
loc varchar2(13));
b) 確認
describe dept
4、 資料型別
5、 使用子查詢建立表
a) 使用as subquery 選項,建立表和插入資料結合起來
1. create table table [(column ,clumn …)]
as subquery;
b) 指定的列和子查詢中的列要一一對應
c) 通過列名的預設值定義列
例:create table dept80
as select employee_id, last_name,
salary*12 annsal,
hire_date
from employees
where department_id = 80;
table created.
6、 alter table語句
a) 追加新的列
alter table talbe add(column datatype [default expr] [,column datatype]…);
b) 修改現有的列
alter table talbe modify(column datatype [default expr] [,column datatype]…);
c) 為新追加新的列定義預設值
alter table talbe drop(column datatype [default expr] [,column datatype]…);
d) 刪除乙個列
alter table table_name rename column old_column_name to new_column_name
7、 刪除表
a) 資料和結構都被刪除
b) 所有正在執行的相關事務被提交
c) 所有相關索引被刪除
d) drop table 語句不能回滾
8、 改變物件的名稱
a) 執行rename語句改變表,檢視,序列,或同義詞的名稱
rename dept to detail_dept table renamed
b) 必須是物件的擁有者
9、 清空表
a) truncate table 語句
i. 刪除表中所有的資料
ii. 釋放表的儲存空間
truncate table detail_dept;
table truncated。
b) truncate語句不能回滾
c) 可以使用delete語句刪除資料
10、 約束
a) 約束是表一級的限制
b) 如果存在依賴關係,約束可以防止錯誤的刪除資料
c) 約束的型別
i. not null
ii. unique
iii. primary key
iv. foreign key
1. foreign key: 在子表中,定義了乙個表級的約束
2. references: 指定表和父表中的列
3. on delete cascade: 當刪除父表時,級聯刪除子表記錄
4. on delete set null: 將子表的相關依賴記錄的外鍵值置為null 4.
v. chech
1. 引用currval, nextval, level, 和rownum
2. 呼叫sysdate, uid, user, 和userenv 函式
3. 另乙個表的查詢記錄
11、 約束規則
a) 使用者可以自定義約束,也可以使用oracle server的sys_cn格式命名約束
b) 約束建立的時機:
i. 建立表的時候,同時建立約束
ii. 表結構建立完成後
c) 約束可以定義在列一級,或者是表一級
d)通過資料字典看約束
建立和管理表
建立和管理表 常用的資料字典表有 user tables,user objects,user catalog 目錄 例子 create table dept30 as select empno,ename,sal 12 annual,hiredate from emp where deptno 30...
建立和管理表
建立和管理表 一 建立表 1 直接建立 create table buff goob varchar2 5 kplid number 5 dwes varchar2 5 2 通過子查詢的方式建立 create table buff asselect last name employee id fro...
Oracle 建立和管理表
建立表 sql create table test1 2 tid number,3 tname varchar2 20 4 hidatedate date default sysdate default表示預設值 快速建表 sql 建立表 包含員工號 姓名 月薪 年薪 部門名稱 sql create...