大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節(jié)點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 Java數據庫面試題大全帶答案

Java數據庫面試題大全帶答案

更新時間:2020-02-05 10:08:42 來源:動力節(jié)點 瀏覽4467次


Java數據庫面試題大全帶答案


  數據庫篇


  1:數據庫的分類


  關系型數據庫ORDBMS:(oracle、MySQL、SqlServer等)


  特點:二維表存儲,使用sql語言操作,有事務可以控制數據操作的完整性可以復雜的聯查


  非關系型數據庫nosql:(MongoDB、redis等)


  特點:鍵值對或json存儲,弱事務或無事務操作數據效率更高可以用于充當緩存


  2:SQL語句分為哪幾種?


  SQL語句主要可以劃分為以下幾類:


  DDL(DataDefinitionLanguage):數據定義語言,定義對數據庫對象(庫、表、列、索引)的操作。


  包括:CREATE、DROP、ALTER、RENAME、TRUNCATE等


  DML(DataManipulationLanguage):數據操作語言,定義對數據庫記錄的操作。


  包括:INSERT、DELETE、UPDATE、SELECT等


  DCL(DataControlLanguage):數據控制語言,定義對數據庫、表、字段、用戶的訪問權限和安全級別。


  包括:GRANT、REVOKE等


  TransactionControl:事務控制


  包括:COMMIT、ROLLBACK、SAVEPOINT等


  3:排序


  關鍵字:orderby


  使用方法:select*from表名orderby字段排序方式


  Orderby都寫在查詢語句的最后,如果不加排序方式,默認升序,多個字段排序用逗號分隔


  4:分組


  關鍵字:groupby


  使用方法:select*from表名where條件groupby字段orderby字段排序方式


  注意:使用groupby查詢時,查詢字段只能是分組字段或聚合函數,當查詢的條件為非聚合函數時,可以在groupby之前使用where條件判斷,如果查詢條件為聚合函數,必須在groupby之后使用having進行條件判斷,having是在分組之后執(zhí)行的查詢條件,having后跟的查詢條件必須是聚合函數或者分組字段。


  groupby多個字段分組,使用逗號分隔,只有分組字段完全相同時,才會正常分租,否則數據全部顯示。


  5:偽列


  Rowid:唯一的物理地址用rowid作為條件查詢可以提升查詢效率。


  Rownum:查詢結果的序號可以用于條件查詢,不能用于修改和刪除


  (1)id,Rowid,Rownum的區(qū)別?


  rowid物理位置的唯一標識。


  而id是邏輯上的唯一標識,所以rowid查找速度要快于id,是目前最快的


  定位一條記錄的方式


  rowid和rownum都是"偽數列"


  所謂“偽數列”也就是默認隱藏的一個數列。


  rownum用于標記結果集中結果順序的一個字段,


  它的特點是按順序標記,而且是連續(xù)的,


  換句話說就是只有有rownum=1的記錄,才可能有rownum=2的記錄。


  rownum關鍵字只能和<或者<=直接關聯


  如果是>或者=則需要給他0起個別名


  6:約束


  1.主鍵約束(PrimayKeyCoustraint)唯一性,非空性;


  altertable表名addconstraint主鍵名稱primarykey(字段名)


  注意:主鍵字段不能重復(唯一的),不可以為空


  一般使用id作為一張表的主鍵,主鍵在創(chuàng)建時,會生成一個索引。


  2.唯一約束(UniqueCounstraint)唯一性,可以空,但只能有一個;


  Altertableaddconstraint約束名unique(字段名)


  3.默認約束(DefaultCounstraint)該數據的默認值;


  4.檢查約束(CheckCounstraint)對該列數據的范圍、格式的限制(如:年齡、性別等


  Altertable表名addconstraint約束名check(字段名條件)


  5.外鍵約束(ForeignKeyCounstraint)需要建立兩表間的關系;


  Altertable表名addconstraint約束名foreignkey(主表字段名)references外鍵到的表名(字段名)


  6.非空約束(NotNullCounstraint):設置非空約束,該字段不能為空。


  altertable表名modify字段名[notnull非空|null允許為空]


  注意:該字段存儲的數據不能為空,但是可以重復。


  7:序列(oracle)


  oracle中,是通過使用序列(sequence)來處理自動增長列。


  (1)可以為表中的列自動產生值。


  (2)由用戶創(chuàng)建數據庫對象,并可由多個用戶共享。


  (3)一般用于主鍵或唯一列。


  (4)可以生成唯一標識


  創(chuàng)建序列基本語法:


  createsequence序列名稱


  startwith開始數字


  incrementby增長數字


  minvalue最小值


  maxvalue最大值


  cycle


  nocache


  詳細說明:


  startwith開始數字從幾開始


  incrementby增長步長,每次增長幾個數


  minvalue最小值


  maxvalue最大值可以不設置,不設置應寫為nomaxvalue,也就是無窮大


  cycle循環(huán),也就是說當長增長到最大值后,再從最小值開始重新增長


  nocache不設緩存


  序列的使用


  序列當前值:序列名.currval


  根據增量獲取序列下一個值:序列名.nextval


  8:表聯查


  根據兩張或兩張以上表之間的關聯關系,進行多張表的同時展示。


  內連接(innerjoin):只會顯示兩張表中關聯字段均不為空的數據


  左連接(leftjoin):會顯示連接左側表的所有數據(左側表為主表)


  右連接(rightjoin):會顯示連接右側表的所有數據(右側表為主表)


  全連接(fulljoin):會將兩張表所有的數據全部顯示


  9:Delete、truncate、drop都是刪除語句,它們有什么區(qū)別?


  delete屬于DML語句,刪除數據,保留表結構,需要commit,可以回滾,如果數據量大,很慢。


  truncate屬于DDL語句,刪除所有數據,保留表結構,自動commit,不可以回滾,一次全部刪除所有數據,速度相對較快。


  Drop屬于DDL語句,刪除數據和表結構,不需要commit,刪除速度最快。


  10:Where和having都是條件篩選關鍵字,它們有什么分別?


  WHERE是在數據分組前進行條件過濾,HAVING子句是在數據分組后進行條件過濾,WHERE子句中不能使用聚合函數,HAVING子句可以使用聚合函數。


Java數據庫面試題大全帶答案


      以上就是動力節(jié)點Java培訓機構小編介紹的“Java數據庫面試題大全帶答案”的內容,希望對大家有幫助,如有疑問,請在線咨詢,有專業(yè)老師隨時為你服務。


相關推薦


最新最全java面試題及答案(初級到高級)


史上最全的中高級JAVA工程師面試題及答案匯總


Java高級開發(fā)工程師面試題


2019史上最全java面試題題庫大全800題


哪有資深java工程師面試題


提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 午夜按摩 | 亚洲线精品一区二区三区 | 国产欧美一区二区三区视频 | 五月开心婷婷 | 天天伊人| www.狠狠| 久久国内 | 97国产免费全部免费观看 | 天天干视频网站 | 久久精品三级 | 日本不卡免费一区 | 亚洲成a v人片在线观看 | 亚洲免费视频网 | 性做久久久久久久久25的美女 | 日韩欧美亚洲一区 | 99精品影视 | 五月色综合 | 9久9久女女热精品视频免费观看 | 欧美成人看片黄a免费 | 啪啪网站色大全免费 | 国产精品久久国产精麻豆99网站 | 99夜色| 蜜月tv| 亚洲视频一区二区在线观看 | 久久99青青久久99久久 | 日韩欧美成人免费中文字幕 | 久久视频精品线视频在线网站 | 国产一区二区三区在线 | 美女被羞羞的网站 | 亚洲久久久久久久 | 国产国产人免费观看在线视频 | 欧美色黄毛片 | 免费观看国产一区二区三区 | 欧美色精品天天在线观看视频 | 国产亚洲精品久久久久久久软件 | 亚洲精品久久久久久动漫剧情 | 麻豆伦理 | 99久热在线精品视频播放6 | 亚洲图片综合区另类图片 | 午夜免费福利在线观看 | 欧美在线观看一区二区 |