欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

SQL中創(chuàng)建存儲(chǔ)過(guò)程

 更新時(shí)間:2022年11月14日 09:47:18   作者:ht巷子  
這篇文章主要介紹了SQL中創(chuàng)建存儲(chǔ)過(guò)程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

創(chuàng)建SQL存儲(chǔ)過(guò)程需要使用到的語(yǔ)法

- 創(chuàng)建存儲(chǔ)過(guò)程

CREATE 存儲(chǔ)過(guò)程的名稱(參數(shù))
BEGIN
...需要執(zhí)行的SQL語(yǔ)句
END

- 調(diào)用

CALL 存儲(chǔ)過(guò)程的名稱(參數(shù))

個(gè)人看法,這就是一個(gè)函數(shù)...

無(wú)參數(shù)

CREATE PROCEDURE p_student_select()
BEGIN 
SELECT * FROM student;
END

CALL p_student_select()

帶參

# out其實(shí)就是cpp里的引用變量,in就是值傳遞
CREATE PROCEDURE p_count(OUT count int)
BEGIN
SELECT COUNT(*) into count FROM student;
END

set @num = 10;	# 定義變量
CALL p_count(@num);		#我的數(shù)據(jù)有11條
SELECT @num as num;		#這里的num已經(jīng)是11了

--這個(gè)就是一個(gè)調(diào)用參數(shù)的函數(shù)
CREATE PROCEDURE p_studnt_selectById(in id int)
BEGIN
SELECT * FROM student WHERE studentNo = id;
END

CALL p_studnt_selectById(4)

兩個(gè)參數(shù)

#兩個(gè)參數(shù)是一樣的用法
CREATE PROCEDURE p_result_test(out num int, in id int)
BEGIN
SELECT COUNT(*) INTO num FROM result WHERE studentNo = id;
END

set @num = 0;
CALL p_result_test(@num, 3);
SELECT @num as num

declare關(guān)鍵字的使用

# declare的作用是用來(lái)定義變量

CREATE PROCEDURE p5()
BEGIN
DECLARE studentName VARCHAR(10);	#創(chuàng)建了一個(gè)變量
set @studentName = 'HELLO';		#給變量賦值
END

CALL p5();
SELECT @studentName
-- 說(shuō)明了declare定義的變量可以在外部直接調(diào)用

IF語(yǔ)句

#if語(yǔ)句沒(méi)啥說(shuō)的,代碼直接能看懂
CREATE PROCEDURE p6(in id int)
BEGIN
IF(id = 0) THEN
	SELECT * FROM student;
ELSE
	SELECT * FROM teacher;
END IF;
END

case語(yǔ)句

#看代碼...
CREATE PROCEDURE p7(in tab VARCHAR(10))
BEGIN
CASE tab
	WHEN 'student' THEN
		SELECT * FROM student;
	WHEN 'teacher' THEN
		SELECT * FROM teacher;
END CASE;
END

loop語(yǔ)句

CREATE PROCEDURE p9(IN id INT)
BEGIN
addloop: LOOP
	set id = id + 1;
	SELECT id;
	IF id > 10 THEN
		LEAVE addloop;
	ELSE
		SELECT * FROM student; 
	END IF; 
END LOOP addloop;

END

repeat

CREATE PROCEDURE p10(in count int)
BEGIN
REPEAT
	set count = count + 1;
	SELECT count;
UNTIL count > 10 END REPEAT;	#count >10跳出

END

while

CREATE PROCEDURE p11(in num int)
BEGIN
while num < 10 DO
	SELECT num;
	SET  num = num + 1; 
END WHILE;
END

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

  • SQL優(yōu)化經(jīng)驗(yàn)總結(jié)

    SQL優(yōu)化經(jīng)驗(yàn)總結(jié)

    這篇文章主要內(nèi)容是SQL優(yōu)化經(jīng)驗(yàn)總結(jié),文章對(duì)SQL優(yōu)化進(jìn)行了詳細(xì)介紹,需要的朋友可以參考下
    2015-08-08
  • SQL Server查詢執(zhí)行過(guò)的SQL記錄的方法

    SQL Server查詢執(zhí)行過(guò)的SQL記錄的方法

    這篇文章給大家介紹了SQL Server查詢執(zhí)行過(guò)的SQL記錄的方法,文中通過(guò)代碼示例給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下
    2024-01-01
  • MS SQL Server游標(biāo)(CURSOR)的學(xué)習(xí)使用

    MS SQL Server游標(biāo)(CURSOR)的學(xué)習(xí)使用

    使用MS SQL Server這樣久,游標(biāo)一直沒(méi)有使用過(guò)。以前都是使用WHILE循環(huán)加臨時(shí)表來(lái)實(shí)現(xiàn)。剛剛聯(lián)系個(gè)示例了解到游標(biāo)概念與語(yǔ)法
    2014-06-06
  • Transactional replication(事務(wù)復(fù)制)詳解之如何跳過(guò)一個(gè)事務(wù)

    Transactional replication(事務(wù)復(fù)制)詳解之如何跳過(guò)一個(gè)事務(wù)

    事務(wù)復(fù)制由 SQL Server 快照代理、日志讀取器代理和分發(fā)代理實(shí)現(xiàn)。 快照代理準(zhǔn)備快照文件(其中包含了已發(fā)布表和數(shù)據(jù)庫(kù)對(duì)象的架構(gòu)和數(shù)據(jù)),然后將這些文件存儲(chǔ)在快照文件夾中,并在分發(fā)服務(wù)器中的分發(fā)數(shù)據(jù)庫(kù)中記錄同步作業(yè)。
    2014-08-08
  • SQL Server日志恢復(fù)還原數(shù)據(jù)的操作流程

    SQL Server日志恢復(fù)還原數(shù)據(jù)的操作流程

    有時(shí)開(kāi)發(fā)過(guò)程中由于不小心或者程序出現(xiàn)錯(cuò)誤導(dǎo)致錯(cuò)誤刪除數(shù)據(jù),或者由于計(jì)算機(jī)以外引起數(shù)據(jù)遭到破壞,這時(shí)候可以采用日志進(jìn)行恢復(fù),所以本文給大家介紹了SQL Server日志恢復(fù)還原數(shù)據(jù)的操作流程,需要的朋友可以參考下
    2024-09-09
  • sql 游標(biāo)的使用—游標(biāo)FOR循環(huán)小例子

    sql 游標(biāo)的使用—游標(biāo)FOR循環(huán)小例子

    游標(biāo)for循環(huán)是在pl/sql塊中使用游標(biāo)最簡(jiǎn)單的方式,它簡(jiǎn)化了對(duì)游標(biāo)的處理。當(dāng)使用游標(biāo)for循環(huán)時(shí),oracle會(huì)隱含的打開(kāi)游標(biāo),提取游標(biāo)數(shù)據(jù)并關(guān)閉游標(biāo)。
    2013-05-05
  • SQL Server遍歷表中記錄的2種方法(使用表變量和游標(biāo))

    SQL Server遍歷表中記錄的2種方法(使用表變量和游標(biāo))

    遍歷表一般都要用到游標(biāo)在SQL Server中可以很容易的用游標(biāo)實(shí)現(xiàn)循環(huán)實(shí)現(xiàn)遍歷表中記錄,本文將介紹使用表變量和游標(biāo)實(shí)現(xiàn)數(shù)據(jù)庫(kù)中表的遍歷,感興趣的朋友可以了解下本文,或許可以幫助到你
    2013-02-02
  • 在SQL中使用convert函數(shù)進(jìn)行日期的查詢的代碼

    在SQL中使用convert函數(shù)進(jìn)行日期的查詢的代碼

    在SQL中使用convert函數(shù)進(jìn)行日期的查詢的代碼...
    2007-08-08
  • 用SQL批量插入數(shù)據(jù)的代碼

    用SQL批量插入數(shù)據(jù)的代碼

    循環(huán)插入數(shù)據(jù)的代碼,需要的朋友可以參考下。
    2011-01-01
  • 最新評(píng)論