SQL程式設計

2022-07-12 11:36:11 字數 2649 閱讀 7733

人生中的第一篇部落格,從現在開始記錄點點滴滴,不再虛度年華。

———beyond

i.學習sql之前回憶一下,什麼是變數?

ii.變數分為區域性變數和全域性變數

區域性變數的使用是先申明再賦值。

全域性變數由系統定義和維護,可以直接使用,但一般不自定義全域性變數。

1:區域性變數:

區域性變數的名稱必須以標記@作為字首

宣告區域性變數的語句如下:

declare @variable name(區域性變數名稱) datatype(資料型別)

區域性變數賦值有兩種方法:set語句或select語句

如圖所示:

2:全域性變數

sqlserver中的所有全域性變數都使用兩個@符號作為字首

常用的幾個全域性變數:(@@error重點)

@@error

上一條sql錯誤號

@@identity

最後一次插入的標識值

@@rowcount

受上乙個sql語句影響的行數

@@servicename

該計算機上的sql服務名稱

@@version

sqlserver的版本資訊

:程式設計師不能自己定義全域性變數,不能給全域性變數賦值

ⅲ:select語句和set語句區別

setselect

同時對多個變數賦值

不支援支援

表示式返回多個值時

出錯將返回的最後乙個值賦給變數

表示式未返回值時

變數將賦值為null

變數保持原值

如下圖所示:23

declare@stuname nvarchar(32)

select@stuname=studentnamefromstudent

wherestudentno=23

ⅳ:資料型別轉換

cast()與convert()函式

基本語法:

cast(表示式 as  資料型別)

convert(資料型別[(長度)],表示式[,樣式])

二者在本質上無任何區別

唯一不同之處是:在將日期時間型別的資料轉換為字串資料時,convert()函式可以通過第三個引數指定轉換後字元資料的顯示格式不同。

ⅴ:邏輯控制語句

1:順序結構控制語句

begin 

語句或語句塊

end2:if-else條件語句(重點)

例如:統計並顯示2013-08-09 的oop考試平均分

如果平均分在70以上,顯示「考試成績優秀」,並顯示前三名學生的考試資訊

如果在70分以下,顯示「考試成績較差」,並顯示後三名學生的考試資訊

3:while迴圈語句

示例:檢查學生「oop」課最近一次考試是否有不及格(60分及格)的學生。

如有,每人加2分,高於95分的學生不再加分,直至所有學生這次考試成績均及格

注:在sql 中,只有while一種迴圈,沒有do-while和for迴圈

4:case多分支語句

case-end語句計算一組條件表示式,並返回其中乙個符合條件的結果

基本語法:

case

when  條件1  then  結果1

when  條件2  then  結果2

[ else 其他結果]

end示例:

abcde五級打分制顯示學生oop課最近一次考試成績(姓名和等級)

a級:   90分以上,b級:80-分,c級:   70-分,d級:60-分,e級:60分以下

批處理

go指令:go關鍵字標誌著批處理的結束,它是一條或多條sql語句的集合 

作用: 能簡化資料庫的管理;

批處理可以提高語句執行的效率;

sql程式設計

sql程式設計 一 區域性變數 1.宣告 declare 變數名 資料型別 2.賦值 set 變數名 值 select 變數名 值 區別 1 set不支援同時給多個變數賦值 select支援 2 如果表示式有多個值的話,set會出錯,而select會保留最後乙個值 3 如果表示式沒有值,set賦值的...

SQL程式設計

一 本章目標 1 掌握如何定義變數並賦值 2 如何輸出顯示資料 3 資料型別轉換 cast 和convert 函式 4 掌握邏輯控制語句 順序結構控制語句 begin end語句 分支結構控制語句 if else語句和case end語句 迴圈結構控制語句 while語句 5 使用批處理指令完成多語...

sql程式設計

sql程式設計 一 區域性變數 1.宣告 declare 變數名 資料型別 2.賦值 set 變數名 值 select 變數名 值 區別 1 set不支援同時給多個變數賦值 select支援 2 如果表示式有多個值的話,set會出錯,而select會保留最後乙個值 3 如果表示式沒有值,set賦值的...