內容結構:
基礎部分: 使用者管理,表管理
高階部分:表查詢,許可權,角色,函式 資料庫管理,約束,索引,事務,pl/sql程式設計
oracle的基本使用
1. show user; 顯示當前使用者
2. exit(;) 斷開資料連線且退出sqlplus
3. 連線命令: conn (connect) system/密碼;
disc[onnect] 斷開連線;
passw[ord] 修改使用者的密碼,若要修改其他使用者的的密碼,需要用sys/system登入
檔案操作命令
1. start 和@
說明:執行sql指令碼 sql>@ d:a.sql 或者sql>start d:a.sql
2. edit
編輯指定的sql指令碼 sql>edit d:\a.sql
3. spool(將第乙個spool以下和第二個spool以上的所有內容輸出到指定內容中去)
將sql*plus螢幕上的內容輸出到指定檔案中去;sql>spoold:\b.sql 並輸入到sql>spool off
顯示和設定環境變數
控制輸出的格式:
linesize:設定顯示行的寬度,預設是80個字元
show linesize ; set linesize 90;
pagesize 設定每頁顯示的行數目,預設是14。
oracle使用者管理
1. 建立使用者create user 【使用者名稱】xiaoming identified by【密碼】m123;
注意:建立使用者的許可權需要系統管理員許可權!!!
2. 刪除使用者
一般以dba的身份去刪除某個使用者,如果用其他使用者去刪除使用者則需要有drop user 的許可權,當該使用者已經新建了表,則需要級聯刪除!!!
drop user 使用者名稱 [cascade]
3. 建立的新使用者沒有任何許可權,甚至登入資料庫的許可權都沒有,需要為其制定相應的許可權。給乙個使用者賦予許可權是grant ,**許可權是revoke。
注意:許可權,角色的分類
沒有create session 許可權則無法連線資料庫,
具有resource許可權的使用者可以建表
物件許可權:使用者對其他使用者的資料物件操作的許可權,比如我新建的hfut使用者對scott使用者的emp表進行訪問。包括:select、insert、update、delete、all(即前四種)、createindex等等。
讓使用者hfut擁有對使用者scott的emp表的所有許可權
【sql> conn scott/tiger
已連線。
sql>grant all on emp to hfut;
授權成功。】
許可權**:revoke注意誰賦予的許可權,就要誰來**許可權!【revoke update on emp from hfut;】先**hfut的update許可權
希望使用者hfut可以去查詢scott使用者的emp表,並且還希望把這個許可權繼續給別人(nus):
————如果是物件許可權,就加入with grant option;
grant all on emp to hfut with grantoption ;
————如果是系統許可權,就加入 with admin option
grant connect on emp to hfut with admin option;
問題:當scott把hfut對於emp表的許可權收回時,nus對emp表還有操作的權利的麼?
答案是:nus失去了對emp表的許可權,【使用者管理實驗筆記】
使用profile管理使用者口令:
profile是口令限制,資源限制的命令集合,當建立資料庫時,oracle會自動建立名稱為default的profile。當使用者沒有指定profile選項,那oracle會將default分配給使用者。
(1) 賬戶鎖定
指定該賬戶登入時最多輸入密碼的次數,也可以指定使用者鎖定的時間(天),一般用dba的身份去執行該命令。
例子:指定使用者tea最多只能嘗試登入三次,鎖定時間為2天;
create profile lock_account[檔名稱] limit
failed_login_attempts 3password_lock_time 2;
alter user tea profile lock_acount;
賬戶解鎖
alter user tea account unlock;
(2) 終止口令
為了讓使用者定期修改密碼可以使用中指口令來完成,同樣這個命令也需要dba身份來完成。
例子:給前面建立的使用者tea建立乙個profile檔案,要求使用者每隔10天要修改自己的登入密碼,寬限期限為2天。
create profile myprofile[檔名] limit password_life_time 10 password_grace_time 2;
alter user tea[使用者名稱]profile myprofile ;
口令歷史:
若希望使用者在修改密碼時,不能使用以前用過的密碼,可以使用口令歷史,這樣oracle就會將口令修改的資訊存放在資料字典中,這樣當使用者修改密碼時,oracle機會對新舊密碼進行比較,當發現新舊密碼一樣時,就提示使用者重新輸入密碼。
例子:1. 建立profile
createprofile password_ history limit password_life_time 10 password_reuse_time10
password_reuse_time 10 // 制定口令可重用時間為10天,即十天後可以重用。
2. 分配給某一使用者
alter user【使用者名稱】
刪除profile :
當不需要某個profile檔案時,可以刪除檔案
drop profile password_history [cascade]
oracle表的資料型別:
字元型:
char 定長 最長2000字元
char(10) 「楓楊」 前四個字元放「楓楊」,後添6個空格補全
varchar2(20) 變長最長4000字元
varchar2(20) 「春節」 oracle 分配四個字元。這樣可以節省空間
clod 字元型大物件 最大4g
數字型:
number範圍±10的38次方。
number(5,2) 表示5位有效數字,2位小數,—999.99到999.99
number(5) 表示5位整數 範圍 ±99999
建立表:
學生表create table student(
xh number(4),
*** char(2),
birthday date,
sal number(7,2)
);班級表:
create table classes (
calssid number(2),
cname varchar2(40),
);修改表(alter table *** )
新增字段:
alter table student add(classid number(2),欄位2 型別,……,欄位n 型別);
修改字段長度:
alter table student modify (xm varchar2(30));
修改欄位的型別/或者名字(不能有資料):
alter table student modify (xm char(30));
刪除一欄位:
alter table student drop column sal ;
修改表的名稱:
rename student to stu ;
刪除表drop table student ;
新增資料
insert into student values(1,』xiaoming』,』男』,』11-12月-1997』,2.355);
如何插入帶有日期的表,並按照年月日的格式插入?
to_date函式:
insert into emp values (999,'小紅',to_date('1988-12-12','yyy-mm-dd'));
插入部分字段:
insert into student values (『a003』,『jhon』,『女』);
插入空值
insert into student (xh,xm,***,birthday,)
values(『a004』,』martin』,』男』,null);
[查詢時,只能使用 is null 或者is not null]
修改乙個欄位的內容:
update student set ***=『女』,birthday = 10-9月-1996 where xh =』1001』;
修改含有null的資料
is null
刪除字段:
delete from student;
刪除記錄,表結構還在,寫日誌,可以恢復,rollback,速度慢;
drop table student;刪除表結構和資料
delete from student where xh=』001』;刪除一條記錄
truncate table student ;
刪除表中所有的記錄,表結構還在,不寫日誌,無法找回刪除記錄,速度快。
Oracle之使用者管理
1.要想建立使用者,需要管理員登入,以下操作在sys下操作 2.建立使用者 create user 使用者名稱 identityfy by 密碼 列子 3.新建立的使用者不具備任何許可權,如果要想獲取登入許可權,可以使用下面的語法 grant 許可權 1,許可權2,to 使用者名稱 列子 4.建立序...
Oracle之使用者管理筆記
使用者是資料庫最基本的物件之一,oracle中的使用者可以分為三類 在正式開發中,使用sysytem是不安全的。建立乙個名為lisa的普通使用者,口令為abc,指定預設表空間users create user lisa identified by abc default tablespace use...
Oracle筆記之使用者管理
建立使用者使用create user語句,需要dba許可權 create user tom identified by mot 修改別人的密碼需要dba許可權,或者alter user許可權 alter user tom identified by newpasswd 或者修改別人的密碼帶上使用者名...