Oracle基礎練習(三)

1、select 5/2,null*5 from dual,得到的兩個結果分別是:2.5null因爲:null值不能運算,不能比較;dual的名字叫虛表或啞表,作用是:求表達式的值
2
select nvl(入學日期,sysdate) from 學生表:此句的功能是:如果入學日期爲空,則返回系統日期。其中nvl所起的作用是:轉換null值。
3
select decode(部門,10,'後勤部',20,'開發部','綜合部') from 員工表:此句的功能是:如果部門字段的值爲10,則顯示爲後勤部,20顯示爲開發部,其它的都顯示爲綜合部。(相當於if if else)
4
、學生繳費表(學號,繳納金額,繳費日期)。學號爲07001同學在2007-7-21繳納5000塊。插入語句爲insert into 學生繳費表(學號,繳納金額,繳費日期) values(‘07001’, 5000,to_date(‘2007-7-21’,’yyyy-mm-dd’)如果繳費日期爲今天,則插入語句爲:insert into 學生繳費表(學號,繳納金額,繳費日期) values(‘07001’, 5000,sysdate)
5
、用序列完成自動編號功能,一共有兩個步驟,一是創建序列,命令爲:_create sequence 序列名。二是在插入語句中使用序列對象(學生表(自動編號,姓名)) insert into 學生表(自動編號,姓名) values(序列名.nextvalue,’張三’)
說明:Oracle用單引號,Java用雙引號。
6
(查書)DML語句指:數據操作語言(增刪改)DDL語句指:數據定義語言(如建表) DCL語句指:數據控制語言(如存儲過程)
D:Data數據:    LLanguage:語言
MManage:操作 DDefine:定義 CControl:控制
7
、學生成績表(學號,課程編號,成績,是否通過)。有的成績可能null。所有成績在60以下的同學,是否通過字段設置爲未通過,否則設置爲通過。其更新語句寫爲(2updae1update)
update test_stu t set t.是否通過='未通過' where nvl(t.成績,0)<60
update test_stu t set t.是否通過='通過' where nvl(t.成績,0)>=60
(case語句可以一定搞定,decode條件只能是值)
8
、索引與序列有什麼區別:索引是數據庫的一種對象,其作用是主要是加快數據庫查詢速度,另外也有約束的功能,如唯一索引。
9
deletetrunatedrop有什麼區別:delete是刪除表的數據,刪除數據時同時要維護表的索引;truncate是將表的數據和索引所佔用的磁盤空間直接初始化,所以速度很快,不能回滾。drop是刪除表對象。
10
主鍵和唯一鍵的區別:主鍵能保證一個字段不能爲空,不能重複。唯一鍵保證一個字段值不能重複,但可以爲null
11
、主鍵和外鍵的區別:主鍵能保證一個字段不能爲空,不能重複。外鍵保證字段的值必須先在另一個表的主鍵中存在。
12
、提交和回滾有什麼區別:相當於確認和撤消的功能。
13
、你對流水號的理解是:對於業務表,標記每筆業務發生的順序號。
14、配置表空間的關鍵配置是:表空間文件設置爲自動擴展。
配置用戶的權限分別是:角色中的resouce權限(表示能夠建表和增刪改查等);系統中的無限表空間權限(Unlimited TableSpace)
15
、使用PowerDesign中,name的意思是:PD專用,顯示字段的中文意思。 Code的意思是:數據庫中字段實際的代碼Comment的意思是數據庫中字段實際的註釋:將Code設置爲大寫的步驟是:模型選項中設置TableColumnCode
16、請寫三個範式的規則和理解(*)
   第一範式:一個列必須只有一個值。各行必須互不相同,即一個表必須要有主鍵。
   第二範式:在第一範式的基礎上,各個非主鍵列必須都依賴於主鍵列。
   第三範式:在第二範式的基礎上,非主鍵列之間必須毫無關係,相互獨立。
17、表間關係有三種,分別是:一對一,一對多,多對多。各舉一個例子:學號和身份證號。一對多:學生,手機號;多對多:學生和課程。
發佈了1 篇原創文章 · 獲贊 0 · 訪問量 2859
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章