表操作
#修改一個列的數據類型(一般限於修改長度,修改爲一個不同類型時,需要當前列爲空)
oracle最常用的字符類型有三個:char,varchar ,varchar2(推薦使用)
最長字符長度分別是:2000,4000,4000
date類型定義:TODAY DATE "YYYY-MM-DD HH24:MI:SS"
ALTER TABLE 表名 MODIFY(列名 數據類型);
如:
ALTER TABLE emp MODIFY(weight NUMBER(3,0) NOT NULL);
#給列改名:
ALTER TABLE 表名 RENAME COLUMN 當前列名 TO 新列名;
如:
ALTER TABLE emp RENAME COLUMN weight TO weight_new;
#將一個表改名:
ALTER TABLE 當前表名 RENAME TO 新表名;
如:
ALTER TABLE bouns RENAME TO bonus_new
給某用戶指定權限
比如用戶A想操作用戶B下的某一個表,那麼可以登錄用戶B輸入以下指令:
grant update on tablename to A;
grant execute on procedurename to
grant update on tablename to
但是with grant option 這個命令有個權限管理問題,當管理員給A賦予上述權限時,則A可以把update tablename的權限賦予其他用戶例如D,事後,如果管理員收回A的 with grant option 權限,則D的權限也失效,但管理員卻不能直接從D那收回update tablename 的權限。
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>擴展筆記: with admin option
此命令的權限傳播是不會失效的,例如
管理員給A 賦予 grant create tablespace to A with admin option;
然後 A 又 賦予C grant create tablespace to C;
於是 A 和 C 分別創建了 table1 和 table2,
此時管理員卻收回了 A的 with admin option 權限 revoke create tablespace from A;
那麼C的 create 權限 卻依然保留,table1 table2 也依然保留。
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>給所有用戶向表
grant