[英]ALTER TABLE SQL Oracle - 12c
我們對以下答案感到困惑。所以我們的答案是 3、5
使用 ALTER TABLE 命令可以執行哪三個操作?
1- 鎖定表中的一組行。
2- 從表中刪除偽列。
3- 重命名表。
4- 同時從表中刪除所有列。
5- 啟用或禁用對表的約束。
6- 限制表上的所有 DML 語句。
謝謝
3、5 和 6
鎖定表中的一組行。
Oracle 鎖定它正在執行 DML 的行或當您使用SELECT ... FOR UPDATE
; 您不能使用ALTER TABLE
鎖定行。
從表中刪除偽列。
表的常見偽列是ROWID
、 ROWNUM
和ORA_ROWSCN
; 你不能放棄這些。
重命名表。
CREATE TABLE table_name ( a NUMBER, b NUMBER ); ALTER TABLE table_name RENAME TO other_name;
作品。
同時從表中刪除所有列。
CREATE TABLE table_name ( a NUMBER, b NUMBER ); ALTER TABLE table_name DROP ( a, b );
輸出:
ORA-12983: cannot drop all columns in a table
在表上啟用或禁用約束。
CREATE TABLE table_name ( a NUMBER CONSTRAINT qu5__pk PRIMARY KEY, b NUMBER ); ALTER TABLE table_name MODIFY PRIMARY KEY DISABLE;
將禁用約束。
限制表上的所有 DML 語句。
CREATE TABLE table_name ( a NUMBER, b NUMBER ); ALTER TABLE table_name READ ONLY;
然后
INSERT INTO table_name ( a, b ) VALUES ( 1, 1 ); UPDATE table_name SET b = 2; DELETE FROM table_name;
全部失敗,但有例外:
ORA-12081: update operation not allowed on table "SCHEMA_NAME"."TABLE_NAME"
db<> 在這里擺弄
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.