Java編程數(shù)據(jù)庫教程:SQL語言學(xué)習(xí)

Java編程數(shù)據(jù)庫教程:SQL語言學(xué)習(xí)

長沙達內(nèi)教育      2022-04-19 00:07:01     7

Java編程數(shù)據(jù)庫教程:SQL語言學(xué)習(xí),  目前比較常用的數(shù)據(jù)庫有:ORACLE,DB2、SQLServer、Sybase、Informix、MySQL、VF、Access等。下列語句有部分是Mssql數(shù)據(jù)中支

課程價格 請咨詢

上課時段: 授課校區(qū):

詳細介紹


  目前比較常用的數(shù)據(jù)庫有:ORACLE,DB2、SQLServer、Sybase、Informix、MySQL、VF、Access等。下列語句有部分是Mssql數(shù)據(jù)中支持的語句,不能在access數(shù)據(jù)庫中使用。



  SQL分類:


  DDL—數(shù)據(jù)定義語言(CREATE,ALTER,DROp,DECLARE)


  DML—數(shù)據(jù)操縱語言(SELECT,DELETE,UPDATE,INSERT)


  DCL—數(shù)據(jù)控制語言(GRANT,REVOKE,COMMIT,ROLLBACK)


  首先,簡要介紹基礎(chǔ)語句:


  1、創(chuàng)建數(shù)據(jù)庫


  CREATEDATAbase數(shù)據(jù)庫名稱


  2、刪除數(shù)據(jù)庫


  dropdatabase數(shù)據(jù)庫名稱


  3、sqlserver數(shù)據(jù)庫中備份數(shù)據(jù)庫


  ---創(chuàng)建備份數(shù)據(jù)的磁盤設(shè)備


  USEmaster


  EXECsp_addumpdevice'disk','testBack','c:mssql7


  backupMyNwind_1.dat'


  ---開始備份


  BACKUPDATAbasepubsTOtestBack


  4、創(chuàng)建表


  createtable表名(列名1類型1[notnull][primary


  key],列名2類型2[notnull],..)


  A根據(jù)已有的表創(chuàng)建新表:


  createtable新表名like舊表名(使用舊表創(chuàng)建新表)


  B根據(jù)已有表的某幾個列創(chuàng)建新表:


  createtable新表名asselectcol1,col2...from舊表名definitiononly


  5、刪除表:


  droptable表名


  6、給數(shù)據(jù)表增加一列:


  Altertable表名addcolumn列名列類型


  注:列增加后將不能刪除。


  DB2中列加上后數(shù)據(jù)類型也不能改變,唯一能改變的是增加varchar類型的長度。


  7、添加刪除主鍵:


  添加主鍵:


  Altertable表名addprimarykey(列名)


  刪除主鍵:


  Altertable表名dropprimarykey(列名)


  8、創(chuàng)建刪除索引:


  創(chuàng)建索引:


  create[unique]index索引名on表名(col....)


  刪除索引:


  dropindex索引名


  注:索引是不可更改的,想更改必須刪除重新建。


  9、創(chuàng)建刪除視圖:


  創(chuàng)建視圖:


  createview視圖名asselectstatement


  刪除視圖:


  dropview視圖名


  10、常用的基本的sql語句:


  選擇:


  select*from表名where范圍


  插入:


  insertinto表名(field1,field2)values(value1,value2)


  刪除:


  deletefrom表名where范圍


  更新:


  update表名setfield1=value1where范圍


  查找:


  select*from表名wherefield1like’%value1%’---like的語法很精妙,查資料!


  排序:


  select*from表名orderbyfield1,field2[desc]


  總數(shù):


  selectcount*as列別名from表名


  求和:


  selectsum(field1)as列別名from表名


  平均:


  selectavg(field1)as列別名from表名


  最大:


  selectmax(field1)as列別名from表名


  最小:


  selectmin(field1)as列別名from表名


  11、幾個高級查詢運算:


  A:UNIOn運算符


  UNIOn運算符通過組合其他兩個結(jié)果表(例如TABLE1和TABLE2)并消去表中任何重復(fù)行而派生出一個新的結(jié)果表。當(dāng)ALL隨UNIOn一起使用時(即UNIOnALL),不消除重復(fù)行。兩種情況下,派生表的每一行不是來自TABLE1就是來自TABLE2。


  B:EXCEPT運算符


  EXCEPT運算符通過包括所有在TABLE1中但不在TABLE2中的行并消除所有重復(fù)行而派生出一個結(jié)果表。當(dāng)ALL隨EXCEPT一起使用時(EXCEPTALL),不消除重復(fù)行。


  C:INTERSECT運算符


  INTERSECT運算符通過只包括TABLE1和TABLE2中都有的行并消除所有重復(fù)行而派生出一個結(jié)果表。當(dāng)ALL隨INTERSECT一起使用時(INTERSECTALL),不消除重復(fù)行。


  注:使用運算詞的幾個查詢結(jié)果行的列必須是一致的。


  12、外連接:


  A、左外連接(左連接):結(jié)果集既包括連接表的匹配行,也包括左連接表的所有行。


  SQL語句:


  selecta.a,a.b,a.c,b.c,b.d,b.ffromaLEF


  TOUTJOINbONa.a=b.c


  B:右外連接(右連接):結(jié)果集既包括連接表的匹配連接行,也包括右連接表的所有行。


  C:全外連接:不僅包括符號連接表的匹配行,還包括兩個連接表中的所有記錄。


  13、SQL取前10條記錄


  selecttop10*form表名where范圍


  14、包括所有在TableA中但不在TableB和TableC中的行并消除所有重復(fù)行而派生出一個結(jié)果表:


  (selectafromtableA)except(selectafromtableB)except(selectafromtableC)


  15、隨機取出10條數(shù)據(jù)


  selecttop10*from表名orderbynewid()


  16、刪除重復(fù)記錄


  Deletefrom表名whereidnotin(selectmax(id)from表名groupbycol1,col2,...)


  17、列出數(shù)據(jù)庫里所有的表名


  selectnamefromsysobjectswheretype='U'


  18、列出表里的所有的列


  selectnamefromsyscolumnswhereid=object_id('TableName')


  19、TRUNCATE初始化表table1


  TRUNCATETABLEtable1


  20、選擇從10到15的記錄


  selecttop5*from(selecttop15*fromtableorderbyidasc)table_別名orderbyiddesc



      以上就是長沙達內(nèi)教育Java培訓(xùn)機構(gòu)小編介紹的“Java編程數(shù)據(jù)庫教程:SQL語言學(xué)習(xí)”的內(nèi)容,希望對大家有幫助,如有疑問,請在線咨詢,有專業(yè)老師隨時為你服務(wù)。


Java編程教程

培訓(xùn)啦提醒您:交易時請核實對方資質(zhì),對于過大宣傳或承諾需謹慎!任何要求預(yù)付定金、匯款等方式均存在風(fēng)險,謹防上當(dāng)。