版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
SQL網(wǎng)絡培訓(初級)U8產品支持部2005-8-18秧真檔臀瓜串向娜輛醛端塌汞書涵騾泊歸智鑿熟苗燭渤屋鰓鈕僚待名泣躬SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)U8產品支持部秧真檔臀瓜串向娜輛醛端塌1說明本次培訓是SQL入門培訓,對SQL比較熟悉的人員可以不參加;本次培訓的主要內容,請參見U8產品支持部今年發(fā)行的“SQLServer維護??保ǔ跫墸?005年第6期;U8產品支持部本季度將要編寫“SQLserver維護??保ǜ呒墸?,請大家提供好的建議,謝謝。槽匡粘炸俊堰腹傳謎既贖馭浚掉螞劇刮秩給鑒順圭芒黔撫冶尸院湯脈寶蓉SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)說明本次培訓是SQL入門培訓,對SQL比較熟悉的人員可以不參2U8維護隊伍的現(xiàn)狀精通財務、業(yè)務知識精通SQL用法使用編程(vb、vc…..)進行維護(后兩種都是要以第一種為基礎的)施鈴尖災鼓屯瓢坡立似氈倡輕腆縷盂禽稱邱研痘占渴淘為盲慷晌襖囤祝仇SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)U8維護隊伍的現(xiàn)狀精通財務、業(yè)務知識施鈴尖災鼓屯瓢坡立似氈倡3維護使用工具1.我們用事件探察器結合U8數(shù)據(jù)字典來定位錯誤2.進一步用查詢分析器利用第一步的結果來分析錯誤3.用查詢分析器來改正錯誤4.用vb編程提高效率改正錯誤錨遇脖獻繁慣閨坍職疵震孤鬃扛痰漠法霞澎秘剪頁坐溝娶身藻贊矣運弦獄SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)維護使用工具1.我們用事件探察器結合U8數(shù)據(jù)字典來定位錯誤錨4U8軟件概述1.U850以前的版本(不含U850),安裝盤不是用Installshield做的,因此需要什么文件可以直接用WinZip解壓縮2.注冊表regedit,ufsoft鍵值3.ufcomsql下為注冊控件;非注冊的控件在系統(tǒng)目錄下如winnt\system32,如client.dll4.u8soft\admin目錄下的升級腳本(系統(tǒng)管理直接調用)5.EAI導入模板6.UFO的rep文件7.一些log文件,WF860.log;lst文件,U8Product.lst8.U8服務的install和remove,停止和啟動9.環(huán)境問題、財務問題、業(yè)務問題10.Access版本的999數(shù)據(jù)庫說明(安裝盤中的ba_文件用winzip解壓即可使用)施擄灼前搜堡抓荊堪舍沏桿懂痢英須棒捧魔賦勞燈唆熟膚槽猿窺堯梆自賄SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)U8軟件概述1.U850以前的版本(不含U850),安裝盤不5U8軟件概述數(shù)據(jù)庫:SQLSERVER帳套數(shù)據(jù)庫:UFDATA_XXX_XXXXU8系統(tǒng)庫:UFSYSTEMU8模板庫:UFMODEL談矮奶木帳邯秋位冪瑤氈禹秘蔽材葛柑噬以諱捐頌戰(zhàn)兢瑰糾禿淘鏡撒坤褐SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)U8軟件概述數(shù)據(jù)庫:SQLSERVER帳套數(shù)據(jù)庫:UFDAT6U8軟件概述Sqlserver的文件: 主文件(*.mdf)極為重要 日志文件(*.Ldf)Access的文件:只有一個文件*.mdb溉熒讀歷漿剎萌也浮估綁櫥銅廁耘渙墨掛攔吁記棕視冰繳巳削屏鍵浚昏柄SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)U8軟件概述Sqlserver的文件:溉熒讀歷漿剎萌也浮估綁7流行的SQL開發(fā)工具MicrosoftAccess
MicrosoftAccess是一個非常容易使用的基于PC機的數(shù)據(jù)庫管理系統(tǒng).
在它的下邊你既可以手工輸入SQL語句也可以使用圖形用戶界面工具來生成SQL語句。手工輸入SQL語句謝四妨消蠢辟油撼超嘉腆咆契干玉仍郡忻堰犧射凰愈埋吮寨掠葫酮謝德澈SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)流行的SQL開發(fā)工具MicrosoftAccess手工輸8流行的SQL開發(fā)工具使用圖形用戶界面工具來生成SQL語句濤葛述廄窘腰簽騰諒外醞仇像社彝壹桑推哇馮巖席袒據(jù)萊誼擾靖磕察毀啟SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)流行的SQL開發(fā)工具使用圖形用戶界面工具來生成SQL語句9流行的SQL開發(fā)工具SQLSERVER查詢分析器劣秸炯嶼兒夷鎖敵謬睫顴矢氏奧婆牡矚貪枕華雞柔獰鋪拐技乎荒要域揮歸SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)流行的SQL開發(fā)工具SQLSERVER查詢分析器劣秸炯嶼兒10MicrosoftAccess和SqlServer的區(qū)別Access不支持存儲過程等sql高級功能Access在網(wǎng)絡應用方面要進行文件共享(是打開文件數(shù)據(jù)),而sqlserver是進行連接控制(連接數(shù)據(jù))賃貍過漆譚秸籠歪雜礎扯支壤伙杖虛敘厚臍垢鬃洽其陣境砧藍舜肆遏隋位SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)MicrosoftAccess和SqlServer的區(qū)別A11查詢-Select語句 SELECT FORM WHERE例: SELECT * FROM YOURTABLENAME林唾萬串或巴生孽狼洛氓咀頂抖攘乒醫(yī)驅拙迪察略傅奇押沒海心腐玲條您SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)查詢-Select語句 SELECT林唾萬串或巴生孽狼洛氓12函數(shù):對數(shù)據(jù)的進一步處理匯總函數(shù)
SUM SUM就如同它的本意一樣它返回某一列的所有數(shù)值的和。 SELECTSUM(COLUMAN)FROMYOURTABLE
COUNT 該函數(shù)將返回滿足WHERE條件子句中記錄的個數(shù)。
最簡單的例子就是您想知道某一個表里的記錄數(shù): SELECTCOUNT(*)FROMYOURTABLE妹拙吟溶潞瘦瑯胞簧釋讕朋曙子僻層嬸誣鱉謾好嗎役抵賤途代翰蝎剩豫稱SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)函數(shù):對數(shù)據(jù)的進一步處理匯總函數(shù)妹拙吟溶潞瘦瑯胞簧釋讕朋曙子13函數(shù):對數(shù)據(jù)的進一步處理MAX 返回表達式的最大值。語法 MAX
([ALL|DISTINCT]expression)參數(shù)ALL 對所有的值進行聚合函數(shù)運算。ALL是默認設置。DISTINCT 指定每個唯一值都被考慮。DISTINCT對于MAX無意義,使用它僅僅是為了符合SQL-92兼容性。expression 常量、列名、函數(shù)以及算術運算符、按位運算符和字符串運算符的任意組合。MAX可用于數(shù)字列、字符列和
datetime列,但不能用于bit列。不允許使用聚合函數(shù)和子查詢。返回類型 返回類型與expression相同。幅壩贍賬轍弗硯挨躺嘿借青芍婿鍛車戶述蓉猙盎刻偷江恥枷銜采糾鴛疲繼SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)函數(shù):對數(shù)據(jù)的進一步處理MAX幅壩贍賬轍弗硯挨躺嘿借青芍婿鍛14字符函數(shù)LEFT返回從字符串左邊開始指定個數(shù)的字符。語法LEFT(character_expression,
integer_expression)參數(shù)character_expression字符或二進制數(shù)據(jù)表達式。character_expression可以是常量、變量或列。character_expression必須是可以隱式地轉換為
varchar的數(shù)據(jù)類型。否則,請使用CAST函數(shù)顯式轉換character_eger_expression是正整數(shù)。如果integer_expression為負,則返回空字符串。返回類型varchar示例A.對列使用LEFT函數(shù)下面的示例返回每個書名最左邊的5個字符。USEpubsGOSELECTLEFT(title,5)FROMtitlesORDERBYtitle_idRIGHT返回從字符串右邊開始指定個數(shù)的字符。其參數(shù)語法與LEFT函數(shù)類似渠伍鮑連木鉛楷杖灌醒敦漓暗藕蓑君昨隅掄滁賦姿軋狽老氧戈件曲晤漂淋SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)字符函數(shù)LEFT渠伍鮑連木鉛楷杖灌醒敦漓暗藕蓑君昨隅掄滁賦姿15SUBSTRING返回字符、binary、text或image表達式的一部分。語法SUBSTRING(expression,
start,
length)參數(shù)Expression:是字符串、二進制字符串、text、image、列或包含列的表達式。不要使用包含聚合函數(shù)的表達式。Start:是一個整數(shù),指定子串的開始位置。Length:是一個整數(shù),指定子串的長度(要返回的字符數(shù)或字節(jié)數(shù))。
說明
由于在text數(shù)據(jù)上使用SUBSTRING時start和length指定字節(jié)數(shù),因此DBCS數(shù)據(jù)(如日本漢字)可能導致在結果的開始或結束位置拆分字符。此行為與READTEXT處理DBCS的方式一致。然而,由于偶而會出現(xiàn)奇怪的結果,建議對DBCS字符使用ntext而非text。返回類型如果expression是支持的字符數(shù)據(jù)類型,則返回字符數(shù)據(jù)。如果expression是支持的binary數(shù)據(jù)類型,則返回二進制數(shù)據(jù)。注釋在字符數(shù)中必須指定使用ntext、char或varchar數(shù)據(jù)類型的偏移量(start和length)。在字節(jié)數(shù)中必須指定使用text、image、binary或
varbinary數(shù)據(jù)類型的偏移量。示例在字符串上使用SUBSTRING下例顯示如何只返回字符串的一部分。該查詢在一列中返回authors表中的姓氏,在另一列中返回authors表中的名字首字母。USEpubsSELECTau_lname,SUBSTRING(au_fname,1,1)FROMauthorsORDERBYau_lname重懲共粥丘賤蛆寓肪頁蓖銑弱緞泄昆溫漚災暗暖悸侶寇叉曬環(huán)俏畜伊八銥SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)SUBSTRING重懲共粥丘賤蛆寓肪頁蓖銑弱緞泄昆溫漚災暗暖16LEN返回給定字符串表達式的字符(而不是字節(jié))個數(shù),其中不包含尾隨空格。語法LEN(string_expression)參數(shù)string_expression要計算的字符串表達式。返回類型int示例下面的示例選定字符個數(shù)和位于芬蘭的公司的CompanyName數(shù)據(jù)。USENorthwindGOSELECTLEN(CompanyName)AS'Length',CompanyNameFROMCustomersWHERECountry='Finland'梁販鐳遲殲鼠渡透撓摟券我違氓剔法稽圓懂桿嗓折卿寄帝鹽阻碳倪妹償贊SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)LEN梁販鐳遲殲鼠渡透撓摟券我違氓剔法稽圓懂桿嗓折卿寄帝鹽阻17CAST和CONVERT將某種數(shù)據(jù)類型的表達式顯式轉換為另一種數(shù)據(jù)類型。CAST和CONVERT提供相似的功能。語法使用CAST:CAST(expression
ASdata_type)使用CONVERT:CONVERT(data_type[(length)],expression[,style])參數(shù)expression是任何有效的Microsoft?SQLServer?表達式。data_type目標系統(tǒng)所提供的數(shù)據(jù)類型,包括bigint和sql_variant。不能使用用戶定義的數(shù)據(jù)類型。lengthnchar、nvarchar、char、varchar、binary或varbinary數(shù)據(jù)類型的可選參數(shù)。style日期格式樣式,借以將datetime或smalldatetime數(shù)據(jù)轉換為字符數(shù)據(jù)(nchar、nvarchar、char、varchar、nchar或
nvarchar數(shù)據(jù)類型);或者字符串格式樣式,借以將float、real、money或smallmoney數(shù)據(jù)轉換為字符數(shù)據(jù)(nchar、nvarchar、char、varchar、nchar或nvarchar數(shù)據(jù)類型)。具體的值見幫助。此類函數(shù)使用也比較多。倫淺腦陳肌雷府柵同冤秀誠黑誦蜀舉導丁憚易盼服凱陳趟升淀宴錨睜抑慫SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)CAST和CONVERT倫淺腦陳肌雷府柵同冤秀誠黑誦蜀舉18SQL中的子句Select…From…Where…Orderby…深瘤佐在豪帕弄喘目洗改驢縷模幅廳箱駒吮鵑牛屜合概阻吭銜構精侖荔量SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)SQL中的子句Select…深瘤佐在豪帕弄喘目洗改驢縷模19SQL中的子句Groupby子句[GROUPBY[ALL]group_by_expression[,...n]
[WITH{CUBE|ROLLUP}]
]USEpubsSELECTtype,AVG(price)FROMtitlesWHEREadvance>$5000GROUPBYtype茸祈駝亮鄭什樞顫翻迸瓢芳茅紛剃竭瞧奪漲繕莖晴嘯揉參闌靴嗡抗竭抉砂SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)SQL中的子句Groupby子句茸祈駝亮鄭什樞顫翻迸瓢20HAVING子句[HAVING<search_condition>]使用HAVING子句選擇行HAVING子句對GROUPBY子句設置條件的方式與WHERE子句和SELECT語句交互的方式類似。WHERE子句搜索條件在進行分組操作之前應用;而HAVING搜索條件在進行分組操作之后應用。HAVING語法與WHERE語法類似,但HAVING可以包含聚合函數(shù)。HAVING子句可以引用選擇列表中出現(xiàn)的任意項。下面的查詢得到本年度截止到目前的銷售額超過$40,000的出版商:USEpubsSELECTpub_id,total=SUM(ytd_sales)FROMtitlesGROUPBYpub_idHAVINGSUM(ytd_sales)>40000艱攘疽淵狐樞慶均萌苛一鉆貿霧猶媳恍核鵲拷角凹經(jīng)锨舷坊帽嘗侮冶濰縫SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)HAVING子句艱攘疽淵狐樞慶均萌苛一鉆貿霧猶媳恍核鵲拷角21理解應用WHERE、GROUPBY和HAVING子句的正確序列對編寫高效的查詢代碼會有所幫助:
WHERE子句用來篩選FROM子句中指定的操作所產生的行。
GROUPBY子句用來分組WHERE子句的輸出。
HAVING子句用來從分組的結果中篩選行。
段卡器膠豹八衡旅纜逼貉霜婪祟敬歐傅呆豌因而蠱盾唯嘉紋疇呸屑示剮責SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)理解應用WHERE、GROUPBY和HAVING子22表的聯(lián)合(Join)INNER指定返回每對匹配的行。廢棄兩個表中不匹配的行。如果未指定聯(lián)接類型,則這是默認設置。FULL[OUTER]指定在結果集中包含左表或右表中不滿足聯(lián)接條件的行,并將對應于另一個表的輸出列設為NULL。這是對通常由INNERJOIN返回的所有行的補充。LEFT[OUTER]指定在結果集中包含左表中所有不滿足聯(lián)接條件的行,且在由內聯(lián)接返回所有的行之外,將另外一個表的輸出列設為NULL。RIGHT[OUTER]指定在結果集中包含右表中所有不滿足聯(lián)接條件的行,且在由內聯(lián)接返回的所有行之外,將與另外一個表對應的輸出列設為NULL。崎攻浦攝陌估換貞覓捏廉渡頌呈庇奢芭啞楞溺姚喻懦疽倔演埃狼褥驚貿墅SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)表的聯(lián)合(Join)INNER崎攻浦攝陌估換貞覓捏廉渡頌呈庇23表的聯(lián)合(Join)所需的資料并不是放在同一個資料表中,
在這個時候,
你就要用到
Join
,如我們U8中的主子表當然
Join
如何將不同的數(shù)據(jù)庫的資料結合,
還要看你如何使用它。 一共有四種不同的
Join
的方式: INNERJoin FULL[OUTER]Join LEFT[OUTER]Join RIGHT[OUTER]Join咆減劣塊崇迸悍游癡朝聽傘濁縣角恨虧窺猶稠忙聘注堵陣謗囪涸志浴碗拎SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)表的聯(lián)合(Join)所需的資料并不是放在同一個資料表中,
在24Union運算符UNION運算符將兩個或更多查詢的結果組合為單個結果集,該結果集包含聯(lián)合查詢中的所有查詢的全部行。這與使用聯(lián)接組合兩個表中的列不同。使用UNION組合兩個查詢的結果集的兩個基本規(guī)則是:所有查詢中的列數(shù)和列的順序必須相同。
數(shù)據(jù)類型必須兼容。恕槍拿標內靶鞘蒙醚畝喀言射殲顫殘廊岔呂奪論系骯御霄佛腳餡伐呻裁逃SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)Union運算符UNION運算符恕槍拿標內靶鞘蒙醚畝喀言射25子查詢:內嵌的SQL子句ifexists (select* fromdbo.sysobjects whereid=object_id(N'[dbo].[PO_Podetails]')andOBJECTPROPERTY(id,N'IsUserTable')=1)
droptable[dbo].[PO_Podetails]
GO蒲朝具之斤翔悔琶崖盈系罰商汕膛權愿恃朵乾柵南齲街墓帚謎屠濺碰閉聾SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)子查詢:內嵌的SQL子句ifexists蒲朝具之斤翔悔26操作數(shù)據(jù)(INSERTUPDATEDELETE)INSERTINTO子句INSERTINTO titles(title_id,title,type,pub_id,price) VALUES('BU9876','CreatingWebPages','business','1389','29.99')
糕眩閘帆翔哥提蕾鄲郵瘤嚷睦東憤襯竊禍方上詫珍燼絨慎宵漱漚誠內穴垣SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)操作數(shù)據(jù)(INSERTUPDATEDELETE)INSE27操作數(shù)據(jù)(INSERTUPDATEDELETE)UPDATE子查詢子查詢可以嵌套在UPDATE、DELETE和INSERT語句以及SELECT語句中。下面的查詢使由NewMoonBooks出版的所有書籍的價格加倍。該查詢更新titles表;其子查詢引用publishers表。UPDATEtitlesSETprice=price*2WHEREpub_idIN(SELECTpub_idFROMpublishersWHEREpub_name='NewMoonBooks')下面是使用聯(lián)接的等效UPDATE語句:UPDATEtitlesSETprice=price*2FROMtitles INNERJOINpublishers ONtitles.pub_id=publishers.pub_idANDpub_name='NewMoonBooks'損侗佬李療矩罪毖萄潞熒藤胞嗅息數(shù)皂蔽焉寒銘毆聲嫉漫涌絨鋼嫡妒隋鼻SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)操作數(shù)據(jù)(INSERTUPDATEDELETE)UPDA28操作數(shù)據(jù)(INSERTUPDATEDELETE)DELETE子句通過下面嵌套的查詢,可以刪除商業(yè)書籍的所有銷售記錄:DELETEsalesWHEREtitle_id IN(SELECTtitle_idFROMtitlesWHEREtype='business')團時延嘶嚎硒剖吱少戈悼競俏膠喉媽原姆函虧假布蛹搬簽熄母蝗扒橇非八SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)操作數(shù)據(jù)(INSERTUPDATEDELETE)DELE29操作數(shù)據(jù)(INSERTUPDATEDELETE)Update使用注意(where后的條件一定要驗證)Select*fromaccinformation wherecid=‘99’andcvalue=‘8.60’Updateaccinformationsetcvalue=‘8.50’ wherecid=‘99’andcvalue=‘8.60’搖吧真邢附糜酣拷棉瞬澳哼藥格皮王琴硫褐勿杭掖午耳盎矣填廖瘟秋檸氈SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)操作數(shù)據(jù)(INSERTUPDATEDELETE)Upda30操作數(shù)據(jù)(SelectInto)Selectinto子句SELECTShippers.*,Link.Address,Link.City,Link.Region,Link.PostalCodeINTONewShippersFROMShippersJOINLinkServer.DB.dbo.ShippersASLinkON(Shippers.ShipperID=Link.ShipperID)譜者梢賓語藻磨營展鴉凍惰耳帶昨季踞沙形枷蝴嬸糟帚鐐怨摧懊啦免廓札SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)操作數(shù)據(jù)(SelectInto)Selectinto子31CREATEDATABASE 創(chuàng)建一個新數(shù)據(jù)庫及存儲該數(shù)據(jù)庫的文件,或從先前創(chuàng)建的數(shù)據(jù)庫的文件中附加數(shù)據(jù)庫。語法CREATEDATABASEdatabase_name
[ON
[<filespec>[,...n]]
[,<filegroup>[,...n]]
]
[LOGON{<filespec>[,...n]}]
[COLLATEcollation_name]
[FORLOAD|FORATTACH]<filespec>::=[PRIMARY]
([NAME=
logical_file_name,]
FILENAME=
'os_file_name'
[,SIZE=
size]
[,MAXSIZE={max_size|UNLIMITED}]
[,FILEGROWTH=
growth_increment])[,...n]<filegroup>::=FILEGROUPfilegroup_name<filespec>[,...n]以上就是具體的語法,其中的參數(shù)可以參照SQL的幫助。餒絹棱妓至俺萍閹著醚哀蜂撕餡字嘲廁揪井葷端婚軟鞋餞烴繞炙儡淡葬侶SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)CREATEDATABASE餒絹棱妓至俺萍閹著醚哀蜂撕餡字32CREATETABLE 創(chuàng)建新表。 和創(chuàng)建數(shù)據(jù)庫一樣,我們也可以利用圖形界面工具(如企業(yè)管理器來創(chuàng)建),但理解其具體的操作并不是一件壞事。 創(chuàng)建表的最基本語法(詳細的語法見幫助)就是 CREATETABLEtable_name ( field1datatype[NOTNULL], field2datatype[NOTNULL], field3datatype[NOTNULL], 。。。。 ) 我們來看一個簡單的例子,如下: CREATETABLEBILLS ( NAME CHAR(30), AMOUNT INT, ACCOUNT_ID INT )
分析 該語句創(chuàng)建了一個名字叫BILLS的表,在BILLS表中有三個字段NAME,ACCOUNT和ACCOUNT_ID。
其中NAME字段為字符類型可以存儲長度30的字符串,而AMOUNT和AMOUNT_ID則只參存儲整數(shù)。丸獻甘秦寓勵孜淚廖阻波貼卸繪歲棗漏擇伙趙募幅皋溺澀沮戮哭癟曉惡蠅SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)CREATETABLE丸獻甘秦寓勵孜淚廖阻波貼卸繪歲棗漏擇33ALTERTABLE語句
加入已經(jīng)存在的表中的某一列
ALTERTABLEtablname
ADD
{[<column_definition>]
|column_nameAScomputed_column_expression
}[,...n]
以上例子是在MYTABLE里增加一個類型為VARCHAR(20),允許為NULL的列NEWcolumn。例子: ALTERTABLEMYTABLE ADD NEWcolumnVARCHAR(20)NULL候釣砸達村街紊綢鑼葫瑩呸索鑿鞍鹽柞描術諷蒸郁才它嘔史姥虜枷浮擾漾SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)ALTERTABLE語句
加入已經(jīng)存在的表中的某一列 A34創(chuàng)建和操作表刪除一列到已經(jīng)存在的表中
ALTERTABLEtablname
DROP
{[CONSTRAINT]constraint_name
|COLUMNcolumn}[,...n]
以上例子是在MYTABLE里刪除列NEWcolumn。例子: ALTERTABLEMYTABLE DROP COLUMN NEWcolumn域窮綻分綠啊皋墻郭蜂覓餐鎂斂順氛讒撞序貝唱晰奶綜遇梧斧錄汐節(jié)印雍SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)創(chuàng)建和操作表刪除一列到已經(jīng)存在的表中 ALTERTABLE35創(chuàng)建和操作表修改已經(jīng)存在的表中的某一列
ALTERTABLEtablname [ALTERCOLUMNcolumn_name
{new_data_type[(precision[,scale])]
[COLLATE<collation_name>]
[NULL|NOTNULL]
|{ADD|DROP}ROWGUIDCOL}
]
以上例子是在MYTABLE里將列NEWcolumn的類型改變成INT。例子: ALTERTABLEMYTABLE
ALTERCOLUMN NEWcolumnINT注:你可以增加或減少某一列的長度,但是你不能將它減少到使修改后的長度小于其中的已有數(shù)據(jù)長度。修改前一定要慎重!核只是妹欲繞勛癥疥魂裂靳裸庫納緝肝甩你拔榔畏忙玲犢猾泰宴礎喧半淹SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)創(chuàng)建和操作表修改已經(jīng)存在的表中的某一列 ALTERTABL36創(chuàng)建和操作表DROPTABLE語句 SQL提供了一個可以從數(shù)據(jù)庫去徹底地移去某個表的命令。DROPTABLE可以從數(shù)據(jù)庫中刪除一個指定的表。一旦這個命令發(fā)出以后就沒有辦法撤消它(在事務提交前除外,關于事務我們將在后面講解)。它最常用在你創(chuàng)建一個臨時表并且已經(jīng)進行完畢了你的全部計劃工作的時候。DROPTABLE語句的語法格式如下 DROPTABLEtable_name下邊是如何刪掉一個叫NEW_BILLS表的實例 DROPTABLENEW_BILLS注意:系統(tǒng)沒有給出你提示該命令不會問你Areyousure?Y/N。但是刪除操作已經(jīng)執(zhí)行,表已經(jīng)永遠地刪除了。刪除一個數(shù)據(jù)庫的命令也類似:DROPDATABASE,這里就不再解說。視堵栗嫩享兢酮縷恒瞥蕩凱聲窒鷹論漚曲營焊修錦添剝徘私罐絞單濤閘灣SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)創(chuàng)建和操作表DROPTABLE語句一旦這個命令發(fā)37創(chuàng)建視圖和索引創(chuàng)建視圖的語法如下:
CREATEVIEW[<database_name>.][<owner>.]view_name[(
column[,...n])]
[WITH<view_attribute>[,...n]]
AS
select_statement
[WITHCHECKOPTION]
<view_attribute>::=
{ENCRYPTION|SCHEMABINDING|VIEW_METADATA}界檬男陌兩課游里整瘴景曠樁敘筷繭肇訖頰盲右淫吼七審琵哺頸矩旅銻線SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)創(chuàng)建視圖和索引創(chuàng)建視圖的語法如下:界檬男陌兩課游里整瘴景曠樁38創(chuàng)建視圖和索引使用簡單的CREATEVIEW 下例創(chuàng)建具有簡單SELECT語句的視圖。當需要頻繁地查詢列的某種組合時,簡單視圖非常有用。 USEpubs GO IFEXISTS( SELECTTABLE_NAME FROMINFORMATION_SCHEMA.VIEWS WHERETABLE_NAME='titles_view') DROPVIEWtitles_view GO CREATEVIEWtitles_view AS SELECTtitle,type,price,pubdate FROMtitles GO字萍杖哪脈秋際森錢費估銻改儒超降統(tǒng)謅緩偷景陌視吟摯握霉賃芋蒼虛渙SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)創(chuàng)建視圖和索引使用簡單的CREATEVIEW字萍杖哪脈秋39創(chuàng)建視圖和索引刪除視圖語句 就像每一個CREATE語句一樣CREATEVIEW語句對應的也與DROPVIEW語句相對應。其語法形式如下: DROPVIEWview_name
在使用它的時候需要記住DROPVIEW命令會使所有與DROP視圖相關聯(lián)的視圖不能正常運行,此時如果你訪問這個數(shù)據(jù)庫,將返回如下錯誤:
由于綁定錯誤,未能使用視圖或函數(shù)‘對應名稱'。 一些數(shù)據(jù)庫系統(tǒng)甚至會將所有與要DROP的視圖相關聯(lián)的視圖也刪除掉頗倡命銥例鄲姓搬擬祥娟臀渭掀繁鐳盈腔凌例率迪疵丫遺豹孜祖哨匠匪搗SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)創(chuàng)建視圖和索引刪除視圖語句頗倡命銥例鄲姓搬擬祥娟臀渭掀繁鐳盈40創(chuàng)建視圖和索引具體創(chuàng)建索引的語句可以參見幫助CREATEINDEX,刪除索引DROPINDEX。圃哆宙圭混薦煞酒巒彭稻悄俄娠賴息薦罩釩精痘殉俯燈國彎躍徹蛛寞稱濺SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)創(chuàng)建視圖和索引具體創(chuàng)建索引的語句可以參見幫助CREATEI41高級SQL-游標建立(定義)一個游標:DECLARE@au_lname VARCHAR(30)DECLAREauthors_cursorCURSOR
FOR
SELECTau_lname FROMauthorsOPENauthors_cursor打開游標:FETCH
NEXT
FROMauthors_cursorINTO@au_lname取游標記錄:瀏覽游標記錄:WHILE@@FETCH_STATUS=0BEGIN
print@au_lname FETCH
NEXT
FROMauthors_cursorINTO@au_lnameEND關閉游標:CLOSEauthors_cursor釋放游標:DEALLOCATEauthors_cursor凹擎繭芳瓷蜀悶閥矢翹莽場朽惹蝕扮臻扶們程嗡任識握仁滅畜蛆墳攢馮腎SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)高級SQL-游標建立(定義)一個游標:DECLARE@au42高級SQL-存儲過程CREATEPROC[EDURE]procedure_name[;number]
[{@parameterdata_type}
[VARYING][=default][OUTPUT]
][,...n] [WITH
{RECOMPILE|ENCRYPTION|RECOMPILE,ENCRYPTION}]
[FORREPLICATION]
ASsql_statement[...n]麗糟負乒董蹋綸階馭系貪乍犯迢盟畸銹茬雞攪業(yè)肅對米沽同灼犯逐檸胚武SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)高級SQL-存儲過程CREATEPROC[EDURE43高級SQL-觸發(fā)器語法:create
triggertrigger_nameontable_namefor
{insert,update,delete}asSQL_Statements宴歌刨吼趟較霉暫萎十貪酌念賢排洗蔓訝戒避臭烙翅毋鎮(zhèn)非棕縱物恒央豢SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)高級SQL-觸發(fā)器語法:宴歌刨吼趟較霉暫萎十貪酌念賢排洗蔓訝44基本的事務控制(TRANSACTION)BEGINTRANSACTIONBEGINTRAN[SACTION][transaction_name|@tran_name_variable
[WITHMARK['description']]]COMMITTRANSACTIONCOMMIT[TRAN[SACTION][transaction_name|@tran_name_variable]]ROLLBACKTRANSACTIONROLLBACK[TRAN[SACTION]
[transaction_name|@tran_name_variable
|savepoint_name|@savepoint_variable]]繩乞培季非穎角臉便鄂乏敬穆酸跌坤矯加校輪庚娜蛇塑檄引疲腫攘靜鬃豆SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)基本的事務控制(TRANSACTION)繩乞培季非穎角臉45基本的事務控制(TRANSACTION)Transaction應用useufdata_887_2004select*fromaccinformationwherecid='99'beginTRANSACTIONtestupdateaccinformationsetcvalue='8.50'wherecid='99'rollbacktransactiontest梆妖呆傀官說棄丘衰寓睬媒垮運駛秦懈貍銹鵬萬嘻界班窩鎳坍墳駒悄佐晉SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)基本的事務控制(TRANSACTION)Transact46存儲過程的執(zhí)行EXECUTE(exec)EXEC[UTE]({
@string_variable|[N]'tsql_string'}[+...n])EXECUTEproc_calculate_taxes@p2='A'藹瀾烹褒模淮室州譚睡屋余岔籃瘡噪烹斬戒迭靡淚引震曲舒罕訪稿瑰跨勇SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)存儲過程的執(zhí)行EXECUTE(exec)藹瀾烹褒?;词抑?7存儲過程的執(zhí)行下例使用xp_cmdshell擴展存儲過程列出文件擴展名為.exe的所有文件的目錄。USEmasterEXECUTExp_cmdshell'dir*.exe'次黍清積翠矢鉤效又睡帽怕茸佰們擎師婆雞吼梳捎鎳擔瞻秧蹭峪站湖銻擬SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)存儲過程的執(zhí)行下例使用xp_cmdshell擴展存儲過程48系統(tǒng)存儲過程sp_executesqlsp_executesql[@stmt
=]stmt
[
{,[@params
=]N'@parameter_name
data_type[,...n]'}
{,[@param1=]'value1'[,...n]}
]下面的示例創(chuàng)建并執(zhí)行一個簡單的SELECT語句,其中包含名為@level的嵌入?yún)?shù)。executesp_executesqlN'select*frompubs.dbo.employee wherejob_lvl=@level', N'@leveltinyint', @level=35帶潛扇晤揀碾毗厭籠司臍鎖份窿瀉袋幅鐳晉啃愧牡輔窺輪沛妝盜罐褒族埃SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)系統(tǒng)存儲過程sp_executesql帶潛扇晤揀碾毗厭籠司臍49系統(tǒng)存儲過程sp_executesql我們U8的例子useufdata_887_2004execsp_executesql N'select*fromaccinformationwherecid=@cid', N'@cidint', @cid=99逃榮槍較遣哉禾泰刮姆團住效潔智泡巴綿渺鏡弗奠恢碴睜拖歸祭刨閑贓挪SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)系統(tǒng)存儲過程sp_executesql我們U8的例子逃榮槍較50系統(tǒng)表SysdatabasesSysobjectsSyscolumnsSysindexesSysmessages屎齊芝仁淳班貢譚霸庭勝慷棟刁膀輝檸丁盎恤喚盔蛙趁佑拿韻內揖褥棗欄SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)系統(tǒng)表Sysdatabases屎齊芝仁淳班貢譚霸庭勝慷棟刁膀51系統(tǒng)表Sysdatabases(要在master庫中使用)Name sysname 數(shù)據(jù)庫的名稱。Dbid smallint 數(shù)據(jù)庫ID(大于6為用戶數(shù)據(jù)庫)庫在哪里?用戶自己建立的數(shù)據(jù)庫Select*frommaster..sysdatabaseswheredbid>6看看Sqlserver自帶的數(shù)據(jù)庫Select*frommaster..sysdatabaseswheredbid<=6巴痘變鎬婉溫釋糜茶拔絕桑劣點盛終迎院渺槳緘搔桶制穴桶往螢循鹽茄蹭SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)系統(tǒng)表Sysdatabases(要在master庫中使用)巴52系統(tǒng)表Sysobjects(每個數(shù)據(jù)庫中都有)Namesysname sysname 對象名。Xtype char(2) U=用戶表
表在哪里?Selectnamefromsysobjectswherextype=‘u’and….喲亂頻埠里蹲恢緩擎又混喧鬼亮竹慶眺兌松掩疤王謂蝦炎燥上聯(lián)懇繪箱頰SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)系統(tǒng)表Sysobjects(每個數(shù)據(jù)庫中都有)喲亂頻埠里蹲恢53系統(tǒng)表Syscolumns(該表位于每個數(shù)據(jù)庫中)Name sysname 列名或過程參數(shù)的名稱。Id int 該列所屬的表對象ID, 或與該參數(shù)關聯(lián)的存儲 過程ID。字段在哪里?select*fromsysobjectswherextype='u'andname='accinformation'select*fromsyscolumnswhereid='280388068'好夷胯錢怨祁擯幅隘媚甄抖莽當丟薪擋善氯瑩卒漳召碧攪謄根刃港涌惹阻SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)系統(tǒng)表Syscolumns(該表位于每個數(shù)據(jù)庫中)好夷胯錢怨54系統(tǒng)表Sysindexes(該表存儲在每個數(shù)據(jù)庫)獲得指定表上所有的索引名稱SELECTnameFROMsysindexesWHEREid=OBJECT_ID('mytable')ANDindid>0糧筍婚覓蝗坎噓惑搬鴦境吵飄奉旁侖維蔗圓分椰眷粕松艦鑒遣糧廢畫沁叉SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)系統(tǒng)表Sysindexes(該表存儲在每個數(shù)據(jù)庫)糧筍婚覓蝗55系統(tǒng)表Sysmessages(master庫中使用)select*frommaster..sysmessages株棱掩誅霉指押僧麻醚掛白酸娜鷹撞槽殃褒卿蓖輛共栗耶薯吩蒙物隘叢賬SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)系統(tǒng)表Sysmessages(master庫中使用)株棱掩56SQL日常使用技巧1.Sqlserver企業(yè)管理器2.Sqlserver查詢分析器3.Sqlserver事件探察器昏返琉次烽麻熾叫毀歧頸靶慈氨稚認琵蓖妝隆俺汕沖濺瞇倚妝唱襪場樣溺SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)SQL日常使用技巧1.Sqlserver企業(yè)管理器昏返琉次57SQL日常使用技巧1.Sqlserver企業(yè)管理器的日常使用技巧
注冊其他機器的sqlserver,有時可用于遠程測試餌公黍末翟捅炮療鋤送偏牧峪涂程定梭邯玫寇祖舊脈騙光賊氦伐賣告擋斑SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)SQL日常使用技巧1.Sqlserver企業(yè)管理器的日常使58SQL日常使用技巧本機屬性端口號1433;混合認證模式;手工內存分配哭眠糾則痞瑪通譽摳撐嘔休舜少斑捻毋察吏析夕醬迫寂狀疽篡穿佯樁嘆音SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)SQL日常使用技巧本機屬性哭眠糾則痞瑪通譽摳撐嘔休舜少斑捻59SQL日常使用技巧編輯注冊屬性七挨暴竅馴任舟徹愿入鍵攤軀子盂竿甘術籃覺沈鎖敗蕩武核抬親逐璃儲譴SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)SQL日常使用技巧編輯注冊屬性七挨暴竅馴任舟徹愿入鍵攤軀子60SQL日常使用技巧Sa密碼修改十毖料雞搐差問柬缽培紡割之上驢屑簽淫煞菏飄踐瓢湛潘社觀禱緣嘔翼乳SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)SQL日常使用技巧Sa密碼修改十毖料雞搐差問柬缽培紡割之上61SQL日常使用技巧導表操作歸慣潑額歇處郴紅婦幀甩秉重叭她擎乓屜展偉活之抹篙晝燦沿巢禿聽界淀SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)SQL日常使用技巧導表操作歸慣潑額歇處郴紅婦幀甩秉重叭她擎62SQL日常使用技巧Sqlserver中bak文件的引入哪腦仆飲祈婉歹麥顆滿咋御烈策砰幸水澀七參營駐葉籌酗鰓槐猶彌搐萊離SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)SQL日常使用技巧Sqlserver中bak文件的引入哪腦63SQL日常使用技巧Sqlserver查詢分析器對象瀏覽器中的模板使用Sql腳本都要在查詢分析器中執(zhí)行撞爾豪間箭詫綢炒煉毅厄寡罕繩疲冊什編搏鋪聶山處寇憫遣戒澀洲臺炭痘SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)SQL日常使用技巧Sqlserver查詢分析器撞爾豪間箭詫64結束謝謝大家耘鄂星道勢泛郭萊稀棉餾晉器糖牢緯搪垮游些喂霹怕英剮燴蜒眩貝緊隋瞻SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)結束謝謝大家耘鄂星道勢泛郭萊稀棉餾晉器糖牢緯搪垮游些喂霹怕英65TheEnd脆賣日鐳潘魂雨彤逃持良劃談猩產窟喀延奮旦惕并辟喂竄悔衛(wèi)隧烤讀忘咆SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)TheEnd脆賣日鐳潘魂雨彤逃持良劃談猩產窟喀延奮旦惕并辟66SQL網(wǎng)絡培訓(初級)U8產品支持部2005-8-18秧真檔臀瓜串向娜輛醛端塌汞書涵騾泊歸智鑿熟苗燭渤屋鰓鈕僚待名泣躬SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)U8產品支持部秧真檔臀瓜串向娜輛醛端塌67說明本次培訓是SQL入門培訓,對SQL比較熟悉的人員可以不參加;本次培訓的主要內容,請參見U8產品支持部今年發(fā)行的“SQLServer維護專刊”(初級)2005年第6期;U8產品支持部本季度將要編寫“SQLserver維護??保ǜ呒墸?,請大家提供好的建議,謝謝。槽匡粘炸俊堰腹傳謎既贖馭浚掉螞劇刮秩給鑒順圭芒黔撫冶尸院湯脈寶蓉SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)說明本次培訓是SQL入門培訓,對SQL比較熟悉的人員可以不參68U8維護隊伍的現(xiàn)狀精通財務、業(yè)務知識精通SQL用法使用編程(vb、vc…..)進行維護(后兩種都是要以第一種為基礎的)施鈴尖災鼓屯瓢坡立似氈倡輕腆縷盂禽稱邱研痘占渴淘為盲慷晌襖囤祝仇SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)U8維護隊伍的現(xiàn)狀精通財務、業(yè)務知識施鈴尖災鼓屯瓢坡立似氈倡69維護使用工具1.我們用事件探察器結合U8數(shù)據(jù)字典來定位錯誤2.進一步用查詢分析器利用第一步的結果來分析錯誤3.用查詢分析器來改正錯誤4.用vb編程提高效率改正錯誤錨遇脖獻繁慣閨坍職疵震孤鬃扛痰漠法霞澎秘剪頁坐溝娶身藻贊矣運弦獄SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)維護使用工具1.我們用事件探察器結合U8數(shù)據(jù)字典來定位錯誤錨70U8軟件概述1.U850以前的版本(不含U850),安裝盤不是用Installshield做的,因此需要什么文件可以直接用WinZip解壓縮2.注冊表regedit,ufsoft鍵值3.ufcomsql下為注冊控件;非注冊的控件在系統(tǒng)目錄下如winnt\system32,如client.dll4.u8soft\admin目錄下的升級腳本(系統(tǒng)管理直接調用)5.EAI導入模板6.UFO的rep文件7.一些log文件,WF860.log;lst文件,U8Product.lst8.U8服務的install和remove,停止和啟動9.環(huán)境問題、財務問題、業(yè)務問題10.Access版本的999數(shù)據(jù)庫說明(安裝盤中的ba_文件用winzip解壓即可使用)施擄灼前搜堡抓荊堪舍沏桿懂痢英須棒捧魔賦勞燈唆熟膚槽猿窺堯梆自賄SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)U8軟件概述1.U850以前的版本(不含U850),安裝盤不71U8軟件概述數(shù)據(jù)庫:SQLSERVER帳套數(shù)據(jù)庫:UFDATA_XXX_XXXXU8系統(tǒng)庫:UFSYSTEMU8模板庫:UFMODEL談矮奶木帳邯秋位冪瑤氈禹秘蔽材葛柑噬以諱捐頌戰(zhàn)兢瑰糾禿淘鏡撒坤褐SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)U8軟件概述數(shù)據(jù)庫:SQLSERVER帳套數(shù)據(jù)庫:UFDAT72U8軟件概述Sqlserver的文件: 主文件(*.mdf)極為重要 日志文件(*.Ldf)Access的文件:只有一個文件*.mdb溉熒讀歷漿剎萌也浮估綁櫥銅廁耘渙墨掛攔吁記棕視冰繳巳削屏鍵浚昏柄SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)U8軟件概述Sqlserver的文件:溉熒讀歷漿剎萌也浮估綁73流行的SQL開發(fā)工具MicrosoftAccess
MicrosoftAccess是一個非常容易使用的基于PC機的數(shù)據(jù)庫管理系統(tǒng).
在它的下邊你既可以手工輸入SQL語句也可以使用圖形用戶界面工具來生成SQL語句。手工輸入SQL語句謝四妨消蠢辟油撼超嘉腆咆契干玉仍郡忻堰犧射凰愈埋吮寨掠葫酮謝德澈SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)流行的SQL開發(fā)工具MicrosoftAccess手工輸74流行的SQL開發(fā)工具使用圖形用戶界面工具來生成SQL語句濤葛述廄窘腰簽騰諒外醞仇像社彝壹桑推哇馮巖席袒據(jù)萊誼擾靖磕察毀啟SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)流行的SQL開發(fā)工具使用圖形用戶界面工具來生成SQL語句75流行的SQL開發(fā)工具SQLSERVER查詢分析器劣秸炯嶼兒夷鎖敵謬睫顴矢氏奧婆牡矚貪枕華雞柔獰鋪拐技乎荒要域揮歸SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)流行的SQL開發(fā)工具SQLSERVER查詢分析器劣秸炯嶼兒76MicrosoftAccess和SqlServer的區(qū)別Access不支持存儲過程等sql高級功能Access在網(wǎng)絡應用方面要進行文件共享(是打開文件數(shù)據(jù)),而sqlserver是進行連接控制(連接數(shù)據(jù))賃貍過漆譚秸籠歪雜礎扯支壤伙杖虛敘厚臍垢鬃洽其陣境砧藍舜肆遏隋位SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)MicrosoftAccess和SqlServer的區(qū)別A77查詢-Select語句 SELECT FORM WHERE例: SELECT * FROM YOURTABLENAME林唾萬串或巴生孽狼洛氓咀頂抖攘乒醫(yī)驅拙迪察略傅奇押沒海心腐玲條您SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)查詢-Select語句 SELECT林唾萬串或巴生孽狼洛氓78函數(shù):對數(shù)據(jù)的進一步處理匯總函數(shù)
SUM SUM就如同它的本意一樣它返回某一列的所有數(shù)值的和。 SELECTSUM(COLUMAN)FROMYOURTABLE
COUNT 該函數(shù)將返回滿足WHERE條件子句中記錄的個數(shù)。
最簡單的例子就是您想知道某一個表里的記錄數(shù): SELECTCOUNT(*)FROMYOURTABLE妹拙吟溶潞瘦瑯胞簧釋讕朋曙子僻層嬸誣鱉謾好嗎役抵賤途代翰蝎剩豫稱SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)函數(shù):對數(shù)據(jù)的進一步處理匯總函數(shù)妹拙吟溶潞瘦瑯胞簧釋讕朋曙子79函數(shù):對數(shù)據(jù)的進一步處理MAX 返回表達式的最大值。語法 MAX
([ALL|DISTINCT]expression)參數(shù)ALL 對所有的值進行聚合函數(shù)運算。ALL是默認設置。DISTINCT 指定每個唯一值都被考慮。DISTINCT對于MAX無意義,使用它僅僅是為了符合SQL-92兼容性。expression 常量、列名、函數(shù)以及算術運算符、按位運算符和字符串運算符的任意組合。MAX可用于數(shù)字列、字符列和
datetime列,但不能用于bit列。不允許使用聚合函數(shù)和子查詢。返回類型 返回類型與expression相同。幅壩贍賬轍弗硯挨躺嘿借青芍婿鍛車戶述蓉猙盎刻偷江恥枷銜采糾鴛疲繼SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)函數(shù):對數(shù)據(jù)的進一步處理MAX幅壩贍賬轍弗硯挨躺嘿借青芍婿鍛80字符函數(shù)LEFT返回從字符串左邊開始指定個數(shù)的字符。語法LEFT(character_expression,
integer_expression)參數(shù)character_expression字符或二進制數(shù)據(jù)表達式。character_expression可以是常量、變量或列。character_expression必須是可以隱式地轉換為
varchar的數(shù)據(jù)類型。否則,請使用CAST函數(shù)顯式轉換character_eger_expression是正整數(shù)。如果integer_expression為負,則返回空字符串。返回類型varchar示例A.對列使用LEFT函數(shù)下面的示例返回每個書名最左邊的5個字符。USEpubsGOSELECTLEFT(title,5)FROMtitlesORDERBYtitle_idRIGHT返回從字符串右邊開始指定個數(shù)的字符。其參數(shù)語法與LEFT函數(shù)類似渠伍鮑連木鉛楷杖灌醒敦漓暗藕蓑君昨隅掄滁賦姿軋狽老氧戈件曲晤漂淋SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)字符函數(shù)LEFT渠伍鮑連木鉛楷杖灌醒敦漓暗藕蓑君昨隅掄滁賦姿81SUBSTRING返回字符、binary、text或image表達式的一部分。語法SUBSTRING(expression,
start,
length)參數(shù)Expression:是字符串、二進制字符串、text、image、列或包含列的表達式。不要使用包含聚合函數(shù)的表達式。Start:是一個整數(shù),指定子串的開始位置。Length:是一個整數(shù),指定子串的長度(要返回的字符數(shù)或字節(jié)數(shù))。
說明
由于在text數(shù)據(jù)上使用SUBSTRING時start和length指定字節(jié)數(shù),因此DBCS數(shù)據(jù)(如日本漢字)可能導致在結果的開始或結束位置拆分字符。此行為與READTEXT處理DBCS的方式一致。然而,由于偶而會出現(xiàn)奇怪的結果,建議對DBCS字符使用ntext而非text。返回類型如果expression是支持的字符數(shù)據(jù)類型,則返回字符數(shù)據(jù)。如果expression是支持的binary數(shù)據(jù)類型,則返回二進制數(shù)據(jù)。注釋在字符數(shù)中必須指定使用ntext、char或varchar數(shù)據(jù)類型的偏移量(start和length)。在字節(jié)數(shù)中必須指定使用text、image、binary或
varbinary數(shù)據(jù)類型的偏移量。示例在字符串上使用SUBSTRING下例顯示如何只返回字符串的一部分。該查詢在一列中返回authors表中的姓氏,在另一列中返回authors表中的名字首字母。USEpubsSELECTau_lname,SUBSTRING(au_fname,1,1)FROMauthorsORDERBYau_lname重懲共粥丘賤蛆寓肪頁蓖銑弱緞泄昆溫漚災暗暖悸侶寇叉曬環(huán)俏畜伊八銥SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)SUBSTRING重懲共粥丘賤蛆寓肪頁蓖銑弱緞泄昆溫漚災暗暖82LEN返回給定字符串表達式的字符(而不是字節(jié))個數(shù),其中不包含尾隨空格。語法LEN(string_expression)參數(shù)string_expression要計算的字符串表達式。返回類型int示例下面的示例選定字符個數(shù)和位于芬蘭的公司的CompanyName數(shù)據(jù)。USENorthwindGOSELECTLEN(CompanyName)AS'Length',CompanyNameFROMCustomersWHERECountry='Finland'梁販鐳遲殲鼠渡透撓摟券我違氓剔法稽圓懂桿嗓折卿寄帝鹽阻碳倪妹償贊SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)LEN梁販鐳遲殲鼠渡透撓摟券我違氓剔法稽圓懂桿嗓折卿寄帝鹽阻83CAST和CONVERT將某種數(shù)據(jù)類型的表達式顯式轉換為另一種數(shù)據(jù)類型。CAST和CONVERT提供相似的功能。語法使用CAST:CAST(expression
ASdata_type)使用CONVERT:CONVERT(data_type[(length)],expression[,style])參數(shù)expression是任何有效的Microsoft?SQLServer?表達式。data_type目標系統(tǒng)所提供的數(shù)據(jù)類型,包括bigint和sql_variant。不能使用用戶定義的數(shù)據(jù)類型。lengthnchar、nvarchar、char、varchar、binary或varbinary數(shù)據(jù)類型的可選參數(shù)。style日期格式樣式,借以將datetime或smalldatetime數(shù)據(jù)轉換為字符數(shù)據(jù)(nchar、nvarchar、char、varchar、nchar或
nvarchar數(shù)據(jù)類型);或者字符串格式樣式,借以將float、real、money或smallmoney數(shù)據(jù)轉換為字符數(shù)據(jù)(nchar、nvarchar、char、varchar、nchar或nvarchar數(shù)據(jù)類型)。具體的值見幫助。此類函數(shù)使用也比較多。倫淺腦陳肌雷府柵同冤秀誠黑誦蜀舉導丁憚易盼服凱陳趟升淀宴錨睜抑慫SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)CAST和CONVERT倫淺腦陳肌雷府柵同冤秀誠黑誦蜀舉84SQL中的子句Select…From…Where…Orderby…深瘤佐在豪帕弄喘目洗改驢縷模幅廳箱駒吮鵑牛屜合概阻吭銜構精侖荔量SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)SQL中的子句Select…深瘤佐在豪帕弄喘目洗改驢縷模85SQL中的子句Groupby子句[GROUPBY[ALL]group_by_expression[,...n]
[WITH{CUBE|ROLLUP}]
]USEpubsSELECTtype,AVG(price)FROMtitlesWHEREadvance>$5000GROUPBYtype茸祈駝亮鄭什樞顫翻迸瓢芳茅紛剃竭瞧奪漲繕莖晴嘯揉參闌靴嗡抗竭抉砂SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)SQL中的子句Groupby子句茸祈駝亮鄭什樞顫翻迸瓢86HAVING子句[HAVING<search_condition>]使用HAVING子句選擇行HAVING子句對GROUPBY子句設置條件的方式與WHERE子句和SELECT語句交互的方式類似。WHERE子句搜索條件在進行分組操作之前應用;而HAVING搜索條件在進行分組操作之后應用。HAVING語法與WHERE語法類似,但HAVING可以包含聚合函數(shù)。HAVING子句可以引用選擇列表中出現(xiàn)的任意項。下面的查詢得到本年度截止到目前的銷售額超過$40,000的出版商:USEpubsSELECTpub_id,total=SUM(ytd_sales)FROMtitlesGROUPBYpub_idHAVINGSUM(ytd_sales)>40000艱攘疽淵狐樞慶均萌苛一鉆貿霧猶媳恍核鵲拷角凹經(jīng)锨舷坊帽嘗侮冶濰縫SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)HAVING子句艱攘疽淵狐樞慶均萌苛一鉆貿霧猶媳恍核鵲拷角87理解應用WHERE、GROUPBY和HAVING子句的正確序列對編寫高效的查詢代碼會有所幫助:
WHERE子句用來篩選FROM子句中指定的操作所產生的行。
GROUPBY子句用來分組WHERE子句的輸出。
HAVING子句用來從分組的結果中篩選行。
段卡器膠豹八衡旅纜逼貉霜婪祟敬歐傅呆豌因而蠱盾唯嘉紋疇呸屑示剮責SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)理解應用WHERE、GROUPBY和HAVING子88表的聯(lián)合(Join)INNER指定返回每對匹配的行。廢棄兩個表中不匹配的行。如果未指定聯(lián)接類型,則這是默認設置。FULL[OUTER]指定在結果集中包含左表或右表中不滿足聯(lián)接條件的行,并將對應于另一個表的輸出列設為NULL。這是對通常由INNERJOIN返回的所有行的補充。LEFT[OUTER]指定在結果集中包含左表中所有不滿足聯(lián)接條件的行,且在由內聯(lián)接返回所有的行之外,將另外一個表的輸出列設為NULL。RIGHT[OUTER]指定在結果集中包含右表中所有不滿足聯(lián)接條件的行,且在由內聯(lián)接返回的所有行之外,將與另外一個表對應的輸出列設為NULL。崎攻浦攝陌估換貞覓捏廉渡頌呈庇奢芭啞楞溺姚喻懦疽倔演埃狼褥驚貿墅SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)表的聯(lián)合(Join)INNER崎攻浦攝陌估換貞覓捏廉渡頌呈庇89表的聯(lián)合(Join)所需的資料并不是放在同一個資料表中,
在這個時候,
你就要用到
Join
,如我們U8中的主子表當然
Join
如何將不同的數(shù)據(jù)庫的資料結合,
還要看你如何使用它。 一共有四種不同的
Join
的方式: INNERJoin FULL[OUTER]Join LEFT[OUTER]Join RIGHT[OUTER]Join咆減劣塊崇迸悍游癡朝聽傘濁縣角恨虧窺猶稠忙聘注堵陣謗囪涸志浴碗拎SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)表的聯(lián)合(Join)所需的資料并不是放在同一個資料表中,
在90Union運算符UNION運算符將兩個或更多查詢的結果組合為單個結果集,該結果集包含聯(lián)合查詢中的所有查詢的全部行。這與使用聯(lián)接組合兩個表中的列不同。使用UNION組合兩個查詢的結果集的兩個基本規(guī)則是:所有查詢中的列數(shù)和列的順序必須相同。
數(shù)據(jù)類型必須兼容。恕槍拿標內靶鞘蒙醚畝喀言射殲顫殘廊岔呂奪論系骯御霄佛腳餡伐呻裁逃SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)Union運算符UNION運算符恕槍拿標內靶鞘蒙醚畝喀言射91子查詢:內嵌的SQL子句ifexists (select* fromdbo.sysobjects whereid=object_id(N'[dbo].[PO_Podetails]')andOBJECTPROPERTY(id,N'IsUserTable')=1)
droptable[dbo].[PO_Podetails]
GO蒲朝具之斤翔悔琶崖盈系罰商汕膛權愿恃朵乾柵南齲街墓帚謎屠濺碰閉聾SQL網(wǎng)絡培訓(初級)SQL網(wǎng)絡培訓(初級)子查詢:內嵌的SQL子句ifexists蒲朝具之斤翔悔92操作數(shù)據(jù)(INSERTUPDATEDELETE)INSERTINTO子句INSERTINTO titles(title_id,titl
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025版煤炭進出口居間服務不可撤銷合同4篇
- 2024預付款擔保形式創(chuàng)新與合同起草策略合同9篇
- 二零二五年新材料存貨質押融資服務合同3篇
- 年度胃動力藥市場分析及競爭策略分析報告
- 2024-2025學年高中英語Unit3AtasteofEnglishhumourSectionⅤGuidedWriting如何寫幽默類故事性的記敘文教師用書教案新人教版必修4
- 二零二五年度農業(yè)科技研發(fā)成果轉化合同范本集3篇
- 2025年度碼頭貨物裝卸機械租賃合同范本3篇
- 2024碎石原料生產設備采購合同
- 2025年度鋁型材電商平臺合作服務合同4篇
- 2024版招生合作服務協(xié)議
- 40篇短文搞定高中英語3500單詞
- 專利補正書實例
- 《動物生理學》課程思政優(yōu)秀案例
- 高分子材料完整版課件
- DB37∕T 5118-2018 市政工程資料管理標準
- 大氣紅色商務展望未來贏戰(zhàn)集團年會PPT模板課件
- T∕CAWA 002-2021 中國疼痛科專業(yè)團體標準
- 住宅工程公共區(qū)域精裝修施工組織設計(217頁)
- 冷卻塔技術要求及質量標準介紹
- (完整版)項目工程款收款收據(jù)
- 井點降水臺班記錄表
評論
0/150
提交評論