版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、Oracle數據庫設計入門第十章本章目的了解數據庫設計的根本方法掌握創(chuàng)建用戶 分配權限掌握序列掌握oracle常用函數數據庫范式概念設計范式范式,數據庫設計范式,數據庫的設計范式是符合某一種級別的關系方式的集合。構造數據庫必需遵照一定的規(guī)那么。在關系數據庫中,這種規(guī)那么就是范式。關系數據庫中的關系必需滿足一定的要求,即滿足不同的范式。目前關系數據庫有六種范式數據庫的范式第一范式第一范式1NF是指數據庫表的每一列是不可分割的根本數據項,同一列中不能有多個值,即實體中的某個屬性不能有多個值或者不能有反復的屬性例如: 張三這個實體不能在性別這個屬性上存在可男可女的情況. 第二范式第二范式2NF是在第
2、一范式1NF的根底上建立起來的,要求數據庫表中的每個實例或行必需可以被獨一地域分 例如: 張三這個實體必需有被獨一標識可用的屬性(學號或者身份證號). 第三范式滿足第三范式3NF必需先滿足第二范式2NF。簡而言之,第三范式3NF要求一個數據庫表中不包含已在其它表中已包含的非主關鍵字信息例如: 張三的性別值沒有必要在多個表反復出現.(可以允許主外鍵關聯(lián))普通設計只需求滿足到3NF 就可以了PowerDesigner的運用PowerDesigner主要包括以下幾個功能部分: DataArchitect 這是一個強大的數據庫設計工具。 ProcessAnalyst 這部分用于創(chuàng)建功能模型和數據流圖,
3、創(chuàng)建處置層次關系。 AppModeler 為客戶/效力器運用程序創(chuàng)建運用模型。 ODBC Administrator 此部分用來管理系統(tǒng)的各種數據源。 PowerDesigner的界面數據庫的ER模型數據庫的物理模型正向工程直接地從 PDM產生一個數據庫, 或產生一個能在他的數據庫管理系統(tǒng)環(huán)境中運轉的數據庫腳本,這是正向工程 。步驟:1 選擇Database Generate Database。 數據庫生成對話框出現。 它顯示生成叁數。 默許叁數曾經被選擇。 2 SQL的文件稱號框中鍵入 PDM_TUTORIAL 。 3 在目錄框中,輸入一條途徑。 4 選擇生成腳本的按鈕。 5 選擇僅僅生成一
4、個文件。 6 點擊Selection 定位鍵。 7 點擊底部表定位鍵。 表頁列出模型中選擇可用的一切數據庫表。 8 全部點擊選擇工具。這選擇一切的表復選框。9 切換Views和Domains選擇需求的視圖和域。 10 點擊確定。逆向工程2-1將已存在的數據庫進新的 PDM 之內。 數據來源能夠是從腳本文件或一個開放數據庫銜接數據來源 ,這是逆向工程 。普通要先定義一個數據庫對象ODBC ,然后再生成新的PDM。逆向工程來自一個腳本文件的數據庫對象步驟:1 選擇File-Reverse Engineer-Database 顯示新的物理數據模型的對話框。 2 點擊部份 Radio 按鈕。 3 選擇
5、下拉列表框的一個數據庫管理系統(tǒng)。4 點擊確定。數據庫逆向工程對話框出現。 5 點擊運用腳本文件的 Radio 按鈕。 6 閱讀適當的目錄選擇腳本文件。7 點擊選項定位鍵顯示選項頁。 8 選擇逆向工程選項。9 點擊確定。 逆向工程2-2逆向工程一個ODBC到新的 PDM步驟:1 選擇File-Reverse Engineer-Database 顯示新的物理數據模型的對話框。 2 點擊Share 單項選擇框。 3 選擇下拉列表框的一個數據庫管理系統(tǒng)。4 點擊確定。數據庫逆向工程對話框出現。 5 點擊運用一個ODBC 單項選擇框,選擇一個ODBC。6 點擊選項定位鍵顯示選項頁。 7 選擇逆向工程選項
6、。8 點擊確定。ODBC逆向工程對話框出現。9 在上面部份對話框的下拉列表框中選擇限定詞和擁有者。 10 點擊一個對象類型定位鍵。 11 點擊確定。 DDL 概述DDL 為數據定義言語以下為部分內容創(chuàng)建數據庫創(chuàng)建用戶創(chuàng)建表空間建表建視圖建索引建過程 函數 包 等。建作業(yè)Linux下啟動oracle首先在shell環(huán)境下輸入sqlplus “/as sysdba以管理員身份進入在sql提示符下敲入startup命令啟動數據庫啟動oracle監(jiān)聽器lsnrctl startWinndow下訪問linux oracle首先windows下安裝oracle客戶端工具修正tnsname.ora文件,添加
7、linux下oralce的ip地址等信息利用plsql devpment工具銜接到liunx中Oracle邏輯構造圖創(chuàng)建表空間創(chuàng)建表空間的語法是:create tablespace tablespacenamedatafile filename size integer K|M autoextend OFF|ON;數據庫用戶概念數據庫系統(tǒng)平安需求控制和存儲 以下內容 用戶名 口令的組合用戶能否授權可銜接數據庫用戶 創(chuàng)建實體集的可用的磁盤空間的大小用戶資源的限制,能否啟動了數據庫審記功能用戶可進展那些操作創(chuàng)建用戶的時候 系統(tǒng)自動對該用戶建立一個相應的方式,方式名和用戶名一樣,用戶僅與一個同名的方
8、式對應和用戶相關的還包含用戶默許表空間用戶暫時表空間用戶資源文件PROFILE建用戶語法create user 用戶名 identified by “密碼 default tablespace 默許表空間名 temporary tablespace 暫時表空名 profile DEFAULT 資源文件 QUOTA INTEGE KMUNLIMITED ON posdata;建用戶CREATE USER “POS IDENTIFIED BY “posDEFAULT TABLESPACE posdataTEMPORARY TABLESPACE postmpPROFILE DEFAULTQUOTA
9、100m ON posdata闡明POS 用戶密碼是 pos 默許表空間是 posdata,暫時表空間是postmp 此用戶只能運用posdata上的 100M 空間數據庫權限概述數據庫系統(tǒng)經過平安措施防止非法用戶對數據進展存儲,以保證數據庫平安運轉,Oracle的平安機制主要是經過權限進展設置的,經過權限設置防止非權限的數據庫存取,非權限的對方式實體的存取,只需經過權限的人證才可以存取數據庫中數據。ORACLE 根據系統(tǒng)管理方式不同,可以將權限分為兩類系統(tǒng)權限實體權限。權限管理系統(tǒng)權限系統(tǒng)權限是執(zhí)行某一類或者在某一用戶中執(zhí)行某種操作的權限,每一種系統(tǒng)權限允許用戶執(zhí)行一種特殊的數據庫操作或者某
10、一類數據庫操作。比如 建表空間 建用戶 修正數據庫構造 修正用戶權限 修正數據庫構造 修正任何用戶的實體,創(chuàng)建基表,視圖,同義,創(chuàng)建數據庫鏈路等權限。實體權限實體權限是指某一用戶對其他用戶的表,視圖,序列,存儲過程,函數,包的操作權限,不同類型的實體 具有不同的實體權限。對于某些方式實體,比如 聚簇,索引,觸發(fā)器,數據庫鏈路等沒有相應的實體權限,這些權限由系統(tǒng)權限進展管理。分配/回收權限語法分配權限GRANT 權限 TO 回收權限用戶名角色名publicRevoke 權限 FROM用戶名角色名public分配/回收系統(tǒng)權限授權SQLGRANT create session,create tab
11、le to JAME,JACKSQLGRANT create session,create table to JAME,JACKWITH ADMIN OPTION回收權限SQLREVOKE create session,create table FROM JAME,JACK闡明:權限回收并沒有回收 由回收者曾經分配出去的權限,這點和SQL SERVER 的revoke 權限 from user cascade 不同分配/回收實體權限授權SQLGRANT SELECT,UPDATE,DELETE ON orders TO JACK回收權限SQLREVOKE SELECT,UPDATE ON or
12、ders FROM JACK創(chuàng)建表創(chuàng)建表語句: Create table tablename ( filedname type not null,default , . ) Tablespace tablespace_name ;對表加注釋: comment on table tablename is ;對表字段加注釋: comment on column T_USER.SUSER is ;Oracle數據類型創(chuàng)建表時,必需為各個列指定數據類型以下是 Oracle 數據類型的類別:數據類型字符數值日期時間RAW/LONG RAWLOBOracle數據類型(字符)當需求固定長度的字符串時,運用
13、CHAR 數據類型。CHAR 數據類型存儲字母數字值。CHAR 數據類型的列長度可以是 1 到 2000 個字節(jié)。VARCHAR2數據類型支持可變長度字符串VARCHAR2數據類型存儲字母數字值VARCHAR2數據類型的大小在1至4000個字節(jié)范圍內LONG 數據類型存儲可變長度字符數據LONG 數據類型最多能存儲 2GB字符數據類型CHARVARCHAR2LONG數據型 日期型數值數據類型可以存儲整數、浮點數和實數最高精度為 38 位數值數據類型的聲明語法:NUMBER ( p, s)P表示小數點前的位數,S表示小數點的位數日期時間數據類型存儲日期和時間值,包括年、月、日,小時、分鐘、秒主要
14、的日期時間類型有:DATE - 存儲日期和時間部分,準確到整個的秒TIMESTAMP - 存儲日期、時間和時區(qū)信息,秒值準確到小數點后6位序列Sequence為一切的用戶生成一致的序列號,也可以給某些主鍵列自動生成編號值語法格式:CREATE SEQUENCE schema.sequence INCREMENT BY integer START WITH integer MAXVALUE integer | NOMAXVALUE MINVALUE integer | NOMINVALUE CYCLE | NOCYCLE CACHE integer | NOCACHE 例如-序列創(chuàng)建和運用1、創(chuàng)
15、建序列create sequence seq_sno increment by 1 start with 1maxvalue 99999 nocycle;2、刪除序列 drop sequence seq_sno ;3、取序列對象中的當前值 select seq_sno .currval from dual;4、取序列對象中的下一個值 select seq_sno .nextval from dual; -此時對象中當前序列值自動增長了“虛 列rownumrownum是一個虛列,在表中并不存在,oracle為每個查詢后的結果集的記錄分別編號,該編號就是rownum 1) 限制前往的結果集只能是1
16、0行 select * from tab_student where rownum10 -該條件前往falseORACLE中常見系統(tǒng)函數 字符串函數 算術函數 日期函數 其他函數字符串函數函數返回值ASCII(char)字符串首字符的ASC碼值TO_CHAR(S,F)ASC碼值為需要轉化的字符 F 為格式INITCAP(char)將字符串中每個單詞的首字母大寫INSTR(char1,char2,m,n)給出字符串char1中從起始位置m開始第n次出現子串char2的位置LENGTH(char)計算字符串的長度LOWER(char)、UPPER(char)將字符串中所有的大寫字母變?yōu)樾?大)寫L
17、PAD(char1,n,char2)從左側用字符串char2補齊字符串char1至長度nLTRIM(char,SET)把char中最左側的若干個字符去掉,以使其首字符不在SET中RPAD(char1,n,char2)從右側用char2補齊char1至長度n.RTRIM(char,SET)把char中最右側的若干個字符去掉,以使其尾字符不在SET中TO_DATE(char,fmt)將字符型的日期轉換為日期型TO_NUMBER(char,fmt)將字符串轉換為數字算術函數函數返回值ABS(n)返回n的絕對值CELL(n)返回大于或等于n的最小整數FLOOR(n)返回小于或等于n的最大整數MOD(m
18、,n)返回m除以n的余數POWER(m,n)返回m的n次方ROUND(m,n)對m進行四舍五入(n大于0時,將m四舍五入到小數點右邊n位,n等于零時,表示對m進行取整,n小于0時,表示將m四舍五入到小數點左邊n位。)SIGN(n)判斷n的正負(n大于0返回,n等于0返回0,n小于0返回-1SQRT(n)返回n的平方根TRUNC(m,n)對m進行截斷操作(n截斷到小數點后第n位,如果n未給出,則系統(tǒng)默認為0,n也可以為負數,表示保留到小數點前第n位。日期函數函數返回值ADD_MONTHS(d,n)返回d加上n個月的日期LAST_DAY(d)返回d所在月份最后一天的日期MONTHS_BETWEEN(d1,d2)返回d1和d2之間相隔的月數NEXT_DAY(d,s)返回晚于d的第一個s的日期(s要求是Sunday,Monday,Tuesday,Wednsday,Thursday,Friday,SaturdaySYSDATE返回系統(tǒng)當前日期和時間。To_date字符轉化為日期其他函數函數返回值GREATEST(參數1,參數2)返回參數1,參數2中的最大值LEAST(參數1,參數2)返回參數1,參數2中的最小值DECODE(e,s1,t1,s2,t2,def)若e等于s1,函數返回t1,若e等于s2,函數返回t2,否則,函數返回def。表達式e允許是任何數據類型,但要求被比
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論