從零開(kāi)始學(xué)SQLServer――第8章數(shù)據(jù)的更新._第1頁(yè)
從零開(kāi)始學(xué)SQLServer――第8章數(shù)據(jù)的更新._第2頁(yè)
已閱讀5頁(yè),還剩6頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、第8章數(shù)據(jù)的更新作為進(jìn)階篇的開(kāi)始,本章主要講述數(shù)據(jù)更新方面的內(nèi) 容。數(shù)據(jù)的更新涉及數(shù)據(jù)修改的的各個(gè)方面,即包括插入新 行、更新已有數(shù)據(jù)等邏輯層面的數(shù)據(jù)修改,還包括批量數(shù)據(jù) 處理等性能方面的數(shù)據(jù)修改。根據(jù)數(shù)據(jù)修改的主要類(lèi)型,具 體可分為以下三部分:插入-INSERT修改.UPDATE刪除-DELETE& 1插A-INSERTINSERT 語(yǔ)句用來(lái)向表或視圖中插入新的數(shù)據(jù)或數(shù)據(jù)行, 執(zhí)行插入數(shù)據(jù)的語(yǔ)法為:INSERT INTO1 table_name WITH ( .n ) Iview_namel rowset_function_limited ( columnist) VALUES( D

2、EFAULT I NULL I expression ,n)I derived_tablel execute_statement&1 1插入單行數(shù)據(jù)單行數(shù)據(jù)的插入有兩種方式:一種是不指定列的列表,INSERT 語(yǔ)句中的每一個(gè)值與表中同樣順序處的每一列值相匹 配;另一種方式是指定列的列表,在 VALUES 中對(duì)每一列賦 予相應(yīng)的值。卜-面通過(guò)兩個(gè)實(shí)例來(lái)說(shuō)明 INSERT 語(yǔ)句的兩種不 同用法。1.插入完整數(shù)據(jù)行2.插入指定數(shù)據(jù)行8.1.1插入單行數(shù)據(jù)C02LTZWC Vt HPSmXnfo CnOLTUGVBQryl刃徐噲滯襯儀卅亀 Xnrr-Unlvemtvl士GOOT3ERT INT

3、O atudenIaXoVALVE8( 2010011*, 張lip ,凰,J Z(T,山樂(lè),* 簡(jiǎn)務(wù)CO3XLECT FRCX stuclent Infc:綸星jsluO stiilane沁Sc siiAge :2dd M祕(mì)12O322檢濟(jì)220C9CC523山東須T93209123貝明舅22a冬曲京4m( (TT6Wbw岔ib年 弟!$立叱岀功決0 cujtnr;iMoo:g 、ft&1 2插入多行數(shù)據(jù)單獨(dú)使用 INSERT 語(yǔ)句每次只能插入一行,然而在實(shí)際 的數(shù)據(jù)庫(kù)開(kāi)發(fā)過(guò)程中,經(jīng)常會(huì)有一次性插入多條數(shù)據(jù)的業(yè)務(wù) 需求。這時(shí)候就要使用另一種批量插入數(shù)據(jù)的方式,即 SELECT 和IN

4、SERT 語(yǔ)句的組合,一次輸入多行數(shù)據(jù),語(yǔ)法 格式為:INSERT table_nameSELECT columist FROM table Jist WHEREsearch_conditionsLUULTO, Va. QurTl劉京疾績(jī)舀&#以:曲旦LUHTAJ- vJB tqX XU2E(U.4.VC131_/:八ccINSERT IMO 3?udencXaoSXLXCT * FROH eaarStuXnf aCC5FLECT -te*r!5fitnfc31LKJTTKROa stuoenclnicOUDHi6eRetuace?1tfiAJCfiWecx12AITIK23.1 aw

5、w3XD5133Mt228.1.2插入多行數(shù)據(jù):lliAXUiAZCixpcp小王弋?msxa:Ik-曲勇a山*0:Wff(丈2?MIL力甩阪二陽(yáng)廠(chǎng)201COK理山X山手鳥(niǎo)暫多JCiS8. 1. 3技術(shù)提升在掌握插入語(yǔ)句 INSERT 的基礎(chǔ)知識(shí)之后,下面介紹一 些高級(jí)應(yīng)用。1.SELECT INTO 語(yǔ)句的使用2.INSERT EXEC 語(yǔ)句的使用3 帶有 OUTPUT 的 INSERT8. 1. 3技術(shù)提升tr9E(Qaiveeol,91URCMWTO teaalnfoCOSTLCC-r FRC cp戸“ $ 0/ljs t/MirQwcr三壬2MiMi視5)4jWPKMwfy.rrm/T

6、 Ci c s)!gY、y cc oo mT亡8. 2修改一UPDATEUPDATE 語(yǔ)句用來(lái)修改表中已經(jīng)存在的數(shù)據(jù),可以一 次修改一條數(shù)據(jù)中的值,也可以同時(shí)修改多條數(shù)據(jù)的值。 UPDATE語(yǔ)句的語(yǔ)法如下。UPDATE table_nameSET I column_name = I expression I DEFAULT I NULLFROM table_name,. WHERE8. 2.1修改單行數(shù)據(jù)單行數(shù)據(jù)的修改中,可以修改不止一列的內(nèi)容,只需 要子在要修改的列后加入分隔符“,然后加上列一個(gè)列 的表達(dá)式即可。o芋.仲戌黨如.wwmaom X L:g. ZA 00 “X& 2.2修

7、改多行數(shù)據(jù)實(shí)際的業(yè)務(wù)處理過(guò)程中,有時(shí)需要同時(shí)更新整個(gè)表的 某些數(shù)據(jù)列, 或者是符合某條件的數(shù)據(jù)列。 比如所有的學(xué)生 同時(shí)注冊(cè),或者男女生分別住不同宿舍樓,都需要同時(shí)更改 或者設(shè)置多行數(shù)據(jù)的值。具體的操作如 F:1.修改整個(gè)表的某列數(shù)據(jù)2.修改部分行的數(shù)據(jù)8. 2.2修改多行數(shù)據(jù)rnm*Fo g 5 ”7,.広於方 HOC 曲離Q XT5E(Vniv m_y】%asftDCT * mon scntMMinro GOwi-ii( (*nr ir.rn r i Fivrer - I GOAMO3 :UJcp* nrcvcfaaxtr 2200冋n.*f*e&XOMLI無(wú) 3 左”工移plit

8、林 pLJ!ruo存 stHaw f匕匸付“”壬入貝nUBXtL3wS?ms“dteo.TtetrEMT03AntA22WJUXTU0ZH:tuD6W2耐 陽(yáng)8MMWe*八AD201(015彎山一&訖R20心;o芋.仲戌黨如.wwmaom X L:g. ZA 00 “X眄耳昱聖 雯 孫T*nmns山201卡席 P& 2. 3技術(shù)提升除了基本的 T-SQL 所支持的標(biāo)準(zhǔn) UPDATE, SQL Server 2005 還提供了幾種用于數(shù)據(jù)修改的更為高級(jí)的操作語(yǔ) 言,它們的優(yōu)化程度更高,實(shí)現(xiàn)功能更為豐富。包括基于級(jí) 聯(lián)的 UPDATE、帶有 OUTPUT 的UPDATE 和 UPD

9、ATE 賦值 語(yǔ)句。需要注意的是,在使用 OUTPUT 子句把輸入保存到一 個(gè)表時(shí),不會(huì)激活該表的觸發(fā)器或者 CHECK 約束,同樣不 會(huì)參與任何一側(cè)的外鍵約束。如果這時(shí)需要激活目標(biāo)表的觸 發(fā)器或 CHECK 約束,可以把輸入保存到臨時(shí)表或表變量, 然后在復(fù)制到目標(biāo)表。8.3刪除數(shù)據(jù)DELETE 語(yǔ)句用來(lái)刪除數(shù)據(jù)表中的數(shù)據(jù),可以一次性 刪除一條或多條數(shù)據(jù),也可以一次性刪除整個(gè)表中的全部數(shù) 據(jù)。DELETE 語(yǔ)句的語(yǔ)法如下。DELETE table_nameFROM table_name,. .,n(WHERE I I DELETE 語(yǔ)句中關(guān)鍵部分的含義如下。tablename:指要需要?jiǎng)h除數(shù)據(jù)

10、的的表名稱(chēng),可以是 一個(gè)表或多個(gè)表。search_conditon:指定表刪除數(shù)據(jù)需符合的條件。& 3 1刪除部分?jǐn)?shù)據(jù)F 面使用具體實(shí)例展示刪除部分?jǐn)?shù)據(jù)的方法:(1)(1)打開(kāi) SSMS 的査詢(xún)窗口。(2)(2)在査詢(xún)窗口中輸入如下所示的代碼。USEUniversit 刃 SELECT * FROM studentinfoGODELETE FROM studentinfo WHERE stuID = 2009001GOSELECT * FROM studentinfo( (3)執(zhí)行后觀(guān)察圖 8 8 所示結(jié)果,執(zhí)行語(yǔ)句“DELETE FROMstudentinfo WHERE stuID

11、 = 2009001后,stuID 為 2009001 的數(shù)據(jù)已經(jīng)不存在。& 3.1刪除部分?jǐn)?shù)據(jù)couLjm jV切砒儀USErV&ivcssitY)T *Kr axuaenr mro8PELITEvtuaeavXnrv WERE- Z009001SLECT student Inf o LSiMLJ_tUDtitimshAm“sKK( (rtM2L2OOMC122iananxnc男20山蘇聲ASf5UDttfiarr*Hi6*上,八*C*nRfriN12:OTX02粉矽力M男IWWP15G)寧i-M4tfS49i努刃85O菱詢(xún)巳刪金行CKlTWtt 9 CT2)x C53)Vf

12、tuv 00 8 8 9 6& 3.2刪除表中所有數(shù)據(jù)下面使用具體實(shí)例展示刪除表中所有數(shù)據(jù)的方法:(1)打開(kāi) SSMS 的査詢(xún)窗口。(2)在査詢(xún)窗口中輸入如下所示的代碼。USEUniversitySELECT * FROM tempStuInfoGODELETE tempStuInfo GOSELECT * FROM tempStuInfo(3)執(zhí)行后觀(guān)察圖 8 9 所示結(jié)果,在表名稱(chēng)后不加任何 限定條件,將刪除表中所有的數(shù)據(jù)記錄。該語(yǔ)句一般用于數(shù) 據(jù)的重寫(xiě)。8.3.2刪除表中所有數(shù)據(jù)8.4小結(jié)本章重點(diǎn)講述了 TSQL 中數(shù)據(jù)更新語(yǔ)句的用法,主要包括數(shù) 據(jù)添加、數(shù)據(jù)修改以及數(shù)據(jù)刪除語(yǔ)句的使用,讀者要能夠根據(jù)實(shí)際 需要對(duì)數(shù)據(jù)作出相應(yīng)的更新操作。INSERT 語(yǔ)句用來(lái)向表或視圖中插入新的數(shù)據(jù)或數(shù)據(jù)行,其中 要插入的數(shù)據(jù)值可以直接寫(xiě)入,也

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論