




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、DBA數(shù)據(jù)庫管理員JAVA程序員架構(gòu)師必看一、技術(shù)問題部分(數(shù)據(jù)庫部分1、表空間的管理方式有哪幾種?數(shù)據(jù)字典管理方式本地文件管理方式2、談?wù)勀銓λ饕睦斫?索引是若干數(shù)據(jù)行的關(guān)鍵字的列表,查詢數(shù)據(jù)時,通過索引中的關(guān)鍵字可以快速定位到要訪問的記錄所在的數(shù)據(jù)塊,從而大大減少讀取數(shù)據(jù)塊的I/O次數(shù),因此可以顯著提高性能。3、說說索引的組成?索引列、rowid4、分區(qū)表用過么?談?wù)劮謪^(qū)表的應(yīng)用?分區(qū)表在對表的DML的并行處理上有極大得優(yōu)勢,而且可以一部分設(shè)為只讀,用在銷售記錄,醫(yī)院處方等地方!5、你對分區(qū)表的理解?怎樣截斷分區(qū)表一個分區(qū)的記錄?一個分區(qū)表有一個或多個分區(qū),每個分區(qū)通過使用范圍分區(qū)、散列
2、分區(qū)、或組合分區(qū)分區(qū)的行分區(qū)表中的每一個分區(qū)為一個段,可各自位于不同的表空間中對于同時能夠使用幾個進程進行查詢或操作的大型表分區(qū)非常有用alter table table_name truncate partition partition_name;6、物理文件有哪幾種?控制文件包含了什么信息?1數(shù)據(jù)文件2控制文件3日志文件包含維護和驗證有選舉權(quán)據(jù)庫完整性的必要信息、例如,控制文件用于識別數(shù)據(jù)文件和重做日志文件,一個有選舉權(quán)據(jù)庫至少需要一個控制文件7、表空間用完了如何增加?三種種擴展方式:1 增加數(shù)據(jù)文件alter tablespace name add datafile 路徑 size 4M
3、;2 擴展數(shù)據(jù)文件大小alter database datafile 路徑 resize 4M;3 把數(shù)據(jù)文件設(shè)為自動增長alter database datafile 路徑 autoextend on next 1M max size 20M;8、SGA包含幾部分?Shared pool(共享池,DataBase Buffer Cache(數(shù)據(jù)緩沖區(qū)Redo Log Buffer(重做日志緩沖區(qū), Large Pool,大池,JAVA池。9、DECODE函數(shù)的用法?DECODE的語法:DECODE(value,if1,then1,if2,then2,if3,then3,.,else,表示如果
4、value等于if1時,DECODE函數(shù)的結(jié)果返回then1,.,如果不等于任何一個if值,則返回else。初看一下,DECODE 只能做等于測試,但剛才也看到了,我們通過一些函數(shù)或計算替代value,是可以使DECODE函數(shù)具備大于、小于或等于功能。還可以轉(zhuǎn)化表結(jié)構(gòu)!10、DELETE和TRUNCATE的區(qū)別?答:1、TRUNCATE在各種表上無論是大的還是小的都非???。如果有ROLLBACK命令DELETE將被撤銷,而TRUNCATE則不會被撤銷。2、TRUNCATE是一個DDL語言,向其他所有的DDL語言一樣,他將被隱式提交,不能對TRUNCATE使用ROLLBACK命令。3、TRUNC
5、ATE將重新設(shè)置高水平線和所有的索引。在對整個表和索引進行完全瀏覽時,經(jīng)過TRUNCATE操作后的表比DELETE操作后的表要快得多。4、TRUNCATE不能觸發(fā)任何DELETE觸發(fā)器。5、不能授予任何人清空他人的表的權(quán)限。6、當(dāng)表被清空后表和表的索引講重新設(shè)置成初始大小,而delete則不能。7、不能清空父表。11、談?wù)勀銓κ聞?wù)的理解?ORACLE事務(wù)從COMMIT、ROLLBACK、連接到數(shù)據(jù)庫或開始第一條可執(zhí)行的SQL語句時開始,到一條COMMIT、ROLLBACK語句或退出數(shù)據(jù)庫時結(jié)束。如果在一個事務(wù)中包含DDL語句,則在DDL語句的前后都會隱含地執(zhí)行COMMIT語句,從而開始或結(jié)束一
6、個事務(wù)。如果一個事務(wù)由于某些故障或者由于用戶改變主意而必須在提交前取消它,則數(shù)據(jù)庫被恢復(fù)到這些語句和過程執(zhí)行之前的狀態(tài)。利用ROLLBACK語句可以在COMMIT命令前隨時撤消或回退一個事務(wù)??梢曰赝苏麄€事務(wù),也可以會退部分事務(wù),但是不能回退一個已經(jīng)被提交的事務(wù)?;赝瞬糠质聞?wù)的ROLLBACK命令為:ROLLBACK to savepoint 存儲點名存儲點是用戶放入事務(wù)中的標(biāo)記,用來表示一個可被回退的位置。存儲點通過在事務(wù)中放入一個SAVEPOINT命令而被插入。該命令的語法是:SAVEPOINT 存儲點名如果在ROLLBACK語句中沒有給出存儲點名,則整個事務(wù)被回退。12、給表A加一列ab
7、c口述?數(shù)據(jù)庫正在應(yīng)用時應(yīng)先使數(shù)據(jù)庫處于靜默狀態(tài)再alter table a add abc varchar2(10,如果不是就直接用!13、客戶端連接服務(wù)器需要修改什么文件?tnsname.ora,listener.ora14、索引重建的概念?說說索引重建的意義?當(dāng)我們創(chuàng)建索引時,oracle會為索引創(chuàng)建索引樹,表和索引樹通過rowid(偽列來定位數(shù)據(jù)。當(dāng)表里的數(shù)據(jù)發(fā)生更新時,oracle會自動維護索引樹。但是在索引樹中沒有更新操作,只有刪除和插入操作。例如在某表id列上創(chuàng)建索引,某表id列上有值“101”,當(dāng)我將“101”更新為“110”時,oracle同時會來更新索引樹,但是oracle
8、先將索引樹中的“101”標(biāo)示為刪除(實際并未刪除,只是標(biāo)示一下,然后再將“110”寫到索引樹中。如果表更新比較頻繁,那么在索引中刪除標(biāo)示會越來越多,這時索引的查詢效率必然降低,所以我們應(yīng)該定期重建索引。來消除索引中這些刪除標(biāo)記。一般不會選擇先刪除索引,然后再重新創(chuàng)建索引,而是rebuild索引。在rebuild期間,用戶還可以使用原來的索引,并且rebuild新的索引時也會利用原來的索引信息,這樣重建索引會塊一些。15、你對游標(biāo)的理解,游標(biāo)的分類,使用方法?游標(biāo)是結(jié)果集數(shù)據(jù)中的指針,作用是為遍歷結(jié)果集時,存儲每條記錄的結(jié)果,1.聲明游標(biāo),2.打開游標(biāo),3.提取游標(biāo),4.關(guān)閉游標(biāo)游標(biāo)for循環(huán)顯
9、式游標(biāo),隱式游標(biāo),游標(biāo)變量!16、存儲過程的用法?在存儲過程中異常的處理,分類?舉兩個預(yù)定義異常的例子? 存儲過程:是預(yù)編譯數(shù)據(jù)庫SQL的集合存儲過程是預(yù)編譯過的,執(zhí)行時勿須編譯,執(zhí)行速度更快,存儲過程封裝了一批SQL語句,便于維護數(shù)據(jù)的完整性與一致性。并且可以多次調(diào)用。異常:自定義,預(yù)定義,非預(yù)定義No_Data_Found Too_Many_Rows CASE_NOT_FOUND17、談?wù)勀銓Ψ謪^(qū)索引的理解,說說分類和區(qū)別?分區(qū)表和一般表一樣可以建立索引,分區(qū)表可以創(chuàng)建局部索引和全局索引。當(dāng)分區(qū)中出現(xiàn)許多事務(wù)并且要保證所有分區(qū)中的數(shù)據(jù)記錄的唯一性時采用全局索引。SQL> create
10、 index dinya_idx_t on dinya_test(item_id2 local3 (4 partition idx_1 tablespace dinya_space01,5 partition idx_2 tablespace dinya_space02,6 partition idx_3 tablespace dinya_space037 ;Index created.SQL>看查詢的執(zhí)行計劃,從下面的執(zhí)行計劃可以看出,系統(tǒng)已經(jīng)使用了索引: SQL> select * from dinya_test partition(part_01 t where t.item
11、_id=12; Execution Plan-0 SELECT STATEMENT Optimizer=CHOOSE (Cost=2 Card=1 Bytes=1871 0 TABLE ACCESS (BY LOCAL INDEX ROWID OF DINYA_TEST (Cost=2 Card=1 Bytes=1872 1 INDEX (RANGE SCAN OF DINYA_IDX_T (NON-UNIQUE (Cost=1Statistics-0 recursive calls0 db block gets4 consistent gets0 physical reads0 redo s
12、ize334 bytes sent via SQL*Net to client309 bytes received via SQL*Net from client2 SQL*Net roundtrips to/from client1 sorts (memory0 sorts (disk2 rows processedSQL>1.3.2. 全局索引分區(qū)的建立全局索引建立時global 子句允許指定索引的范圍值,這個范圍值為索引字段的范圍值:SQL> create index dinya_idx_t on dinya_test(item_id2 global partition by
13、 range(item_id3 (4 partition idx_1 values less than (1000 tablespace dinya_space01,5 partition idx_2 values less than (10000 tablespace dinya_space02,6 partition idx_3 values less than (maxvalue tablespace dinya_space037 ;Index created.SQL>本例中對表的item_id字段建立索引分區(qū),當(dāng)然也可以不指定索引分區(qū)名直接對整個表建立索引,如:SQL> c
14、reate index dinya_idx_t on dinya_test(item_id;Index created.SQL>同樣的,對全局索引根據(jù)執(zhí)行計劃可以看出索引已經(jīng)可以使用:SQL> select * from dinya_test t where t.item_id=12;Execution Plan-0 SELECT STATEMENT Optimizer=CHOOSE (Cost=2 Card=3 Bytes=5611 0 TABLE ACCESS (BY GLOBAL INDEX ROWID OF DINYA_TEST (Cost=2 Card=3 Bytes=5
15、612 1 INDEX (RANGE SCAN OF DINYA_IDX_T (NON-UNIQUE (Cost=1Card=3Statistics-5 recursive calls0 db block gets10 consistent gets0 physical reads420 bytes sent via SQL*Net to client309 bytes received via SQL*Net from client2 SQL*Net roundtrips to/from client3 sorts (memory0 sorts (disk5 rows processed18
16、、創(chuàng)建用戶的語句?Create user user_name identified by passworddefault tablespace tablespacename;grant create session to username;19、談?wù)勀銓嵗睦斫?Oracle是用實例來進行數(shù)據(jù)庫管理的,實例在用戶和orale數(shù)據(jù)庫之間充當(dāng)中間層的角色。每當(dāng)在服務(wù)器上啟動數(shù)據(jù)庫時,就在內(nèi)存中創(chuàng)建一個oracle實例,即oracle為數(shù)據(jù)庫分配內(nèi)存和創(chuàng)建并啟動一個或多個oracle進程,然后由實例加載并打開數(shù)據(jù)庫,最后由這個實例來訪問和控制硬盤中的數(shù)據(jù)文件。20、觸發(fā)器中能用COMMIT,為什么
17、?在觸發(fā)器中不能使用COMMIT;等事務(wù)控制語句。因為觸發(fā)器是事務(wù)觸發(fā)的如果有事務(wù)控制語句就會影響到觸發(fā)它的事務(wù)。即連帶觸發(fā)它的語句之前的已經(jīng)完成的沒有提交的語句都要受到影響。這是會影響到數(shù)據(jù)的一致性的。21、有幾種表空間?數(shù)據(jù)表空間(永久表空間、臨時表空間、撤銷表空間22、歸檔模式與非歸檔模式?為什么歸檔模式可以恢復(fù)到任意時刻?歸檔是在重做日志文件被覆蓋之前,將該重做日志文件通過復(fù)制操作系統(tǒng)文件的方式,保存到指定的位置。保存下來的重做日志文件的集合被稱為歸檔重做日志文件,復(fù)制的過程被稱為歸檔。在歸檔日志(ARCHIVELOG模式下,ORACLE對重做日志文件進行歸檔操作。非歸檔日志(NOAR
18、CHIVELOG模式下,不會對重做日志文件進行歸檔操作。由于非歸檔模式不會在覆蓋之前保存,這樣就造成了數(shù)據(jù)庫在一定時間之前的重做日志文件丟失,也就不能恢復(fù)到被覆蓋之前。而歸檔模式在任意時間上都有重做日志文件,故可以恢復(fù)到任意時刻。二、技術(shù)問題(JAVA部分1、Struts和Hibernate分別屬于持久層,用例層,表示層的那一層?Struts是表示層,Hibernate是持久層。2、Struts里如何體現(xiàn)MVC模式?Html或jsp文件是MVC模式中的視圖層ActionForm是MVC模式中的模式層Action是MVC模式中的控制層通過控制層可以對視圖層和模式層進行業(yè)務(wù)邏輯的處理3、用Stru
19、ts做過那些項目?4、 談?wù)剬?Struts 的認(rèn)識? Struts 跟 Tomcat 諸多 Apache 項目一樣,是開源軟件,這是它的一大優(yōu)點。使開 發(fā)者能更深入的了解其內(nèi)部實現(xiàn)機制。 除此之外,Struts 的優(yōu)點主要集中體現(xiàn)在兩個方面:Taglib 和頁面導(dǎo)航。 Taglib 是 Struts 的標(biāo)記庫,靈活動用,能大大提高開發(fā)效率。另外,就目前國內(nèi) 的 JSP 開發(fā)者而言,除了使用 JSP 自帶的常用標(biāo)記外,很少開發(fā)自己的標(biāo)記,或 許 Struts 是一個很好的起點。 關(guān)于頁面導(dǎo)航,我認(rèn)為那將是今后的一個發(fā)展方向,事實上,這樣做,使系統(tǒng) 的脈絡(luò)更加清晰。通過一個配置文件,即可把握整個
20、系統(tǒng)各部分之間的聯(lián)系,這對 于后期的維護有著莫大的好處。尤其是當(dāng)另一批開發(fā)者接手這個項目時,這種優(yōu)勢 體現(xiàn)得更加明顯。 但是我覺得它雖然還有不少缺點,但它是一種非常優(yōu)秀的 J2EE MVC 實現(xiàn)方式, 對項目的開發(fā)有很大的幫助。 5、 String 在 JAVA 里是固定長度的嗎?為什么可以用”+”連接? String 在 JAVA 中是有固定長度的 可以用”+”連接的原因是 Java 語言提供對字符串串聯(lián)符號("+")和其他對象到字 符串的轉(zhuǎn)換的特殊支持。字符串串聯(lián)是通過 StringBuilder(或 StringBuffer)類 及其 append 方法實現(xiàn)的。再通過調(diào)用 StingBuffer 中的 toString 方法,將 StringBuffer 的對象轉(zhuǎn)換 String 的對象。 6、 String 和 StringBuffer 的區(qū)別? STRING 的長度是不可變的,STRINGBUFFER 的長度是可變的。如果你對字符 串中的內(nèi)容經(jīng)常進行操作,特別是內(nèi)容要修改時,那么使用 StringBuffer,如果最 后需要 String,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 代賣公司合同范本
- 產(chǎn)品抵押工資合同范本
- 內(nèi)部購買服務(wù)合同范本
- 999玫瑰買賣合同范本
- 云南土地流轉(zhuǎn)合同范本
- 04購房合同范例
- 無錫錦鯉池過濾器施工方案
- 主體蓋房合同范本
- app監(jiān)控合同范本
- 公司安全協(xié)議合同范本
- 《人力資源管理》全套教學(xué)課件
- 部編人教版語文小學(xué)六年級下冊第四單元主講教材解讀(集體備課)
- (2024年)師德師風(fēng)學(xué)習(xí)內(nèi)容教師師德師風(fēng)培訓(xùn)內(nèi)容通用多篇
- GB/T 3452.3-2005液壓氣動用O形橡膠密封圈溝槽尺寸
- 標(biāo)準(zhǔn)擊實試驗自動計算記錄表
- 一個近乎完美的微信引流招生方案
- 門診特殊病種審批表
- T_CEC 102.1-2016 電動汽車充換電服務(wù)信息交換 第1部分_總則_(高清-最新版)
- 國際形式發(fā)票模板
- 山西省會計師事務(wù)所服務(wù)收費標(biāo)準(zhǔn)(匯編)
- 陜西延長石油(集團)有限責(zé)任公司企業(yè)年金方案
評論
0/150
提交評論