mysql儲存過程說法正確的是 MySQL儲存過程

2021-10-18 22:15:28 字數 1320 閱讀 9859

-- 建立一張表

create table matches (

matchno int(11) not null,

teamno int(11) default null,

playerno int(11) default null,

won int(255) default null,

lost int(255) default null,

primary key (matchno)

) engine=innodb default charset=utf8;

-- 插入5條資料

insert into mytest.matches(matchno, teamno, playerno, won, lost) values (1, 1, 6, 3, 1);

insert into mytest.matches(matchno, teamno, playerno, won, lost) values (7, 1, 57, 3, 0);

insert into mytest.matches(matchno, teamno, playerno, won, lost) values (8, 1, 8, 0, 3);

insert into mytest.matches(matchno, teamno, playerno, won, lost) values (9, 2, 27, 3, 2);

insert into mytest.matches(matchno, teamno, playerno, won, lost) values (11, 2, 112, 2, 3);

select * from matches; -- 5條資料

-- 建立儲存過程

create procedure delete_matches(in p_playerno integer) -- in 代表輸入引數,integer整型

begin

delete from matches

where playerno = p_playerno;

end-- 呼叫儲存過程

call delete_matches(57);

select * from matches; -- 4條資料,已刪除57號運動員的資料

二、儲存過程的引數

儲存過程可以有0個或多個引數,用於儲存過程的定義。

3種引數型別:

in輸入引數:表示呼叫者向過程傳入值(傳入值可以是字面量或變數)

out輸出引數:表示過程向呼叫者傳出值(可以返回多個值)(傳出值只能是變數)

inout輸入輸出引數:既表示呼叫者向過程傳入值,又表示過程向呼叫者傳出值(值只能是變數)

關於暫存器變數下面說法說法正確的是

只有區域性自動變數和形式引數可以作為暫存器變數,其他 如全域性變數 不行 a 暫存器變數可以宣告全域性變數 b無法取暫存器變數的位址 d.暫存器變數訪問效率要比普通變數訪問效率高 e.宣告暫存器變數時有可能不成功 解析 由於register變數使用的是硬體cpu中的暫存器,暫存器變數無位址,所以不能...

內部類的說法不正確的是(

下列內部類的說法不正確的是 c a 內部類的類名只能在定義它的類或程式中或在表示式內部使用 b 內部類可以使用它所在類的靜態成員變數和例項成員變數 c 內部類不可以用abstract修飾符定義為抽象類 d 內部類可作為其他類的成員,而且可訪問它所在類的成員 c內部類的特點 1.可以使用private...

什麼是mysql儲存過程 什麼是mysql儲存過程

mysql中的儲存過程指的是儲存在資料庫中的sql語句集合,當建立好儲存過程後在執行時提供所需引數,儲存過程就可以以 指定的方式使用引數執行並返回值 在mysql中提供了建立儲存過程的能力。儲存過程是mysql以及其他資料庫管理系統中的強大功能。接下來在文章中將為大家具體介紹mysql中的儲存過程,...