oracle數據庫開發面試題2017

ORACLE數據庫系統是美國ORACLE公司(甲骨文)提供的以分佈式數據庫爲核心的一組軟件產品,是目前最流行的客戶/服務器(CLIENT/SERVER)或B/S體系結構的數據庫之一。下面是關於oracle數據庫開發面試題,希望大家認真閱讀!

oracle數據庫開發面試題2017

  1、對數據庫SQL2005、ORACLE熟悉嗎?

SQL2005是微軟公司的數據庫產品。是一個RDBMS數據庫,一般應用在一些中型數據庫的應用,不能跨平臺。

ORACLE是ORACLE公司的數據產品,支持海量數據存儲,支持分佈式布暑,支持多用戶,跨平臺,數據安全完整性控制性能優越,是一個ORDBMS,一般用在大型公司。

  2、能不能設計數據庫?如何實現數據庫導入與導出的更新

使用POWERDISINE工具的使用,一般滿足第三範式就可以了。EXP與IMP數據庫的邏輯導入與導出

  3、如何只顯示重複數據,或不顯示重複數據

顯示重複:select * from tablename group by id having count(*)>1

不顯示重複:select * from tablename group by id having count(*)=1

  4、什麼是數據庫的映射

就是將數據庫的表與字段對應到模型層類名與屬性的過程.

  5、寫分頁有哪些方法,你一般用什麼方法?用SQL語句寫一個分頁?

如何用存儲過程寫分頁?

在SQLSERVER中使用TOP分頁,在ORACLE中用ROWNUM,或分析函數ROW_NUMBER

使用TOP:

select top 20,n.* from tablename n minus select top 10,m.* from tablename m

使用分析函數:

select * from

(select n.*,row_number() over(order by columnname) num from tablename n)

where num>=10 and num <=20;

使用過程時,只要將分頁的範圍用兩個參數就可以實現。在ORACLE中,要將過程封裝在包裏,還要用動態遊標變量才能實現數據集的返回。

  6、ORACLE中左連接與右連接

左連接:LEFT JOIN 右連接:RIGHT JOIN

select mn,mn from tablename1 n left join tablename2 m

on mnname=mnname

用WHERE實現:

select mn,mn from tablename1 n, tablename2 m

where mnname(+)=mnname

  7、什麼是反射、序列化、反序列化?事務有幾種級別?

反射是在程序運行時動態訪問DDL的一種方式。序列化是將對象對二進制、XML等方式直接向文件的存儲。反序列化是將存儲到文件的對象取出的過程。事務的級別的三種:頁面級、應用程序級、數據庫級。

  8、數據測試如何測試?

在PLSQL裏對過程或函數可能通過專用的測試工具,通過對

  9、用事務的時候,如果在業務邏輯層中,調用數據庫訪問層中的方法,訪問層中有很多類,類又有很多方法,每個方法都要實現,那麼如何處理?

通用數據訪問層的實現

  10、什麼時候會用到觸發器

A安全管理、B日誌管理、C複雜業務邏輯實現

  11、如何在數據庫中顯示樹控制?

用父ID與子ID來實現

  12、如何實現數據庫的`優化?

A、調整數據結構的設計。這一部分在開發信息系統之前完成,程序員需要考慮是否使用ORACLE數據庫的分區功能,對於經常訪問的數據庫表是否需要建立索引等。

B、調整應用程序結構設計。這一部分也是在開發信息系統之前完成,程序員在這一步需要考慮應用程序使用什麼樣的體系結構,是使用傳統的Client/Server兩層體系結構,還是使用Browser/Web/Database的三層體系結構。不同的應用程序體系結構要求的數據庫資源是不同的。

C、調整數據庫SQL語句。應用程序的執行最終將歸結爲數據庫中的SQL語句執行,因此SQL語句的執行效率最終決定了ORACLE數據庫的性能。ORACLE公司推薦使用ORACLE語句優化器(Oracle Optimizer)和行鎖管理器(row-level manager)來調整優化SQL語句。

D、調整服務器內存分配。內存分配是在信息系統運行過程中優化配置的,數據庫管理員可以根據數據庫運行狀況調整數據庫系統全局區(SGA區)的數據緩衝區、日誌緩衝區和共享池的大小;還可以調整程序全局區(PGA區)的大小。需要注意的是,SGA區不是越大越好,SGA區過大會佔用操作系統使用的內存而引起虛擬內存的頁面交換,這樣反而會降低系統。

E、調整硬盤I/O,這一步是在信息系統開發之前完成的。數據庫管理員可以將組成同一個表空間的數據文件放在不同的硬盤上,做到硬盤之間I/O負載均衡。

F、調整操作系統參數,例如:運行在UNIX操作系統上的ORACLE數據庫,可以調整UNIX數據緩衝池的大小,每個進程所能使用的內存大小等參數。