面試題: 資料庫 oracle資料庫 未看6

來源:互聯網
上載者:User

標籤:back   表格   沒有   nsis   故障   取字串   規模   lex   trim   

Oracle資料庫面試題總結2017年04月27日 22:41:44閱讀數:9271

 

1、SQL語句分類

DQL(資料查詢語言)select

DML(資料操作語言)insert、delete、update

DDL(資料定義語言 (Data Definition Language))create、drop、alter

DCL(資料控制語言)grant:把許可權授予使用者、revoke:把許可權從使用者收回

TPL(TCL,事務控制語言):commit、rollback

 

2、Oracle是怎樣分頁的

Oracle用rownum進行分頁

分頁語句的步驟:

a.最內層sql,查詢要分頁的所有資料

b.第二層sql,通過rownum偽列確定顯示資料的上限,並且給查詢的資料添加rownum偽列的值

c.最外層sql,設定顯示資料的下限

select*from

(select a.*,rownum r from

(select*from表名 where條件 orderby列) a

whererownum<=頁數*條數) b where r>(頁數-1)*條數

 

3、truncate和delete區別

1)Truncate和delete都可以將資料實體刪掉,truncate操作不記錄到rollback日誌,同時資料不能恢複

2)Truncate是資料定義語言 (Data Definition Language)(DDL),delete是資料操作語言(DML)

3)Truncate不能對視圖進行操作,delete操作不會騰出資料表空間的記憶體

 

4、說說Oracle中經常使用到的函數

length長度、lower小寫、upper大寫、to_date轉化日期、to_char轉化字元、to_number轉化數字Ltrim去左邊空格、rtrim去右邊空格、substr截取字串、add_month增加或減掉月份、

 

5、主鍵有幾種?

複合型、整數型、字元型

 

6、怎樣建立一個索引,索引使用的原則,有什麼優缺點

create index 索引名 on 表名(列名)

原則:

建議索引列建立not null約束

經常與其他表進行串連的表,在串連列上建立索引

優缺點:

建立索引能大大加快檢索速度,加強表與表的串連,但是建立索引很佔用空間

 

7、使用oracle偽列刪除表中的重複資料中的一條

delete fromtable t where t.rowid!=(select max(t1.rowid) from table t1 wheret.name=t1.name)

 

8、如何只顯示重複資料

select * fromtable group by id having count(*)>1

 

9、什麼是資料庫的映射

就是將資料庫中表與欄位對應到模型層類名與屬性的過程

 

10、如何設計資料庫

首先分析項目,看看項目中有多少實體(矩形),為每個實體添加屬性(橢圓),明確實體之間的關係(菱形),繪製E-R圖,將E-R圖轉換成表格

 

11、如何?資料庫的最佳化

1)調整資料庫結構的設計:需要考慮是否使用資料分割函數、是否建立索引等

2)調整資料庫的SQL語句

3)調整伺服器的記憶體配置

4)調整硬碟I/O

5)調整作業系統參數

 

12、關係型資料庫的關係操作有哪些?

選擇(查詢某些行)、投影(查詢某些列)、連結(把多張表串連擷取資料)、增加、刪除、修改      

 

13、你知道哪些菲關係型資料庫,與關係型資料庫的區別是?

 

14、SQL語句與SQL*PLUS命令的區別

1)SQL是關係型資料庫的標準操作語言,而SQL*PLUS是一個用戶端工具,除了執行標準的SQL外,還可以執行工具本身的一些命令。

2)SQL語句不可以縮寫,而SQL*PLUS命令可以縮寫

 

15、oracle資料庫中如何顯示表的結構

建立命令視窗,輸入desc 表名

 

16、oracle中資料庫物件的命名規則

1)必須由字母開始,長度在1-30個字元之間

2)包含字母、數字、_、$、#

3)同一個Oracle伺服器所擁有的對象名不能重複

4)名字不能為Oracle 的保留字

5)大小寫不敏感

 

17、資料庫的三大範式是什嗎?

1)第一範式:原子件,要求每一列的值不能再拆分了

2)第二範式:一張表只描述一個實體(若列中有冗餘資料,則不滿足)

3)第三範式:所有列與主鍵直接相關

 

18、事務的特性(ACID)是指什嗎?

1)原子性(Atomic):事務中的各項操作,要麼全做要麼全不做,任何一項操作的失敗都會導致整個事務的失敗

2)一致性(Consistent):事務結束後系統狀態是一樣的

3)隔離性(Isolated):並發執行的事務彼此無法看到對方的中間狀態

4)持久性(Durable):事務完成後,即使發生災難性的故障,通過日誌和同步備份可以在故障發生後重建資料

 

19、MySQL資料庫與Oracle資料庫有什麼區別

1)應用方面:MySQL是中小型應用的資料庫,一般用於個人項目或中小型網站及論壇。Oracle屬於大型資料庫,一般在具有相當規模的公司專屬應用程式。

2)自動成長的資料類型方面:MySQL有自動成長的資料類型。Oracle沒有自動成長的資料類型,需要建立一個自增序列

3)group by用法:MySQL中group by在select語句中可以隨意使用,但是在Oracle中如果查詢語句中有組函數,那其他列名必須是組函數處理過的或者是group by子句中的列,否則報錯

4)引號方面:MySQL中用雙引號包起字串,Oracle中只可以用單引號包起字串

面試題: 資料庫 oracle資料庫 未看6

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.