成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

MySQL觸發器應用與其存儲過程的實際操作

數據庫 MySQL
今天我們主要向大家描述的是MySQL觸發器的實際應用與其存儲過程的實際操作,以下就是文章的詳細內容描述,望你看完會有所收獲。

以下的文章主要描述的是MySQL觸發器的實際應用與其存儲過程的實際操作,以下的文章將會給你提供相應的詳細方案講解,以下就是相關內容的具體描述。希望會給你帶來一些幫助在此方面。

觸發器:

MySQL數據庫創建觸發器的格式如下:

create trigger <觸發器名稱>

{ before | after}

 

{insert | update | delete}

 

on <表名>

 

for each row

 

<觸發器SQL語句>

 

 

<觸發器SQL語句>:觸發器要執行的SQL語句,如果該觸發器要執行多條SQL語句,要將多條語句放在begin…end塊中。

Show triggers 顯示所有的觸發器信息!

 

存儲過程:

 

創建 

  1. DELIMITER $$  
  2. DROP PROCEDURE IF EXISTS `test`.`outprint`$$  
  3. CREATE PROCEDURE print1(out a varchar(100))  
  4. BEGIN  
  5. select name from info into a;  
  6. END$$  
  7. DELIMITER ;  

調用

  1. Call print1(@c);  
  2. Select @c;  

注意

這樣傳值只能查找一個值賦給a

Select * from info into a就錯了

Show create {procedure | function } 名字

 

查看存儲過程和函數

 

Drop {procedure | function} [if exists] 名字

 

Alter {procedure | function} 名字

 

 

注意:通過 begin end 可以來包含多個語句,每個語句以“;”結尾。

 

 

創建插入

  1. DELIMITER $$  
  2. DROP PROCEDURE IF EXISTS `test`.`insert_info`$$  
  3. CREATE DEFINER=`root`@`%` PROCEDURE `insert_info`(in id int(5),in name varchar(50),in age int(5))  
  4. begin  
  5. insert into info values (id,name,age);  
  6. end$$  
  7. DELIMITER ;  

調用

 

  1. call insert_info(2,'rrr',56); 

 

創建插入輸出(驗證密碼用)

 

  1. Delimiter $$   
  2. Create procedure validateuser  
  3. (in username varchar(20),out param1 varchar(100))   
  4. Begin   
  5. Select Pwd into param1 from welefen.user   
  6. where Name=username;   
  7. End $$ 

 

調用

 

 

  1. call check1('sss',@pw);  
  2. select @pw; 

驗證角谷猜想

 

角谷猜想:給定一個整數x,若x%2=1,則x=3*x+1,

 

否則x=x/2,

 

如此循環下去

 

,經過有限步驟必 能得到1。

 

例如: 初始整數為9 則

 

9->28->14->7->22->11->34->17->52->26

 

->13->40->20->10->5->16->8->4->2->1

 

為了說明存儲過程語法的應用,存儲過程來實現它:

 

創建存儲過程:

  1. delimiter $$  
  2. drop procedure if exists jgguess$$  
  3. create procedure jgguess(in number int)   
  4. begin   
  5. declare param1 int default 1;   
  6. set @a=concat(number);   

jiaogu:loop #循環開始

set param1=number%2;

if param1=1 then set number=number*3+1; #number 為奇數,將它乘3加 1

else set number=number/2;

end if;

set @a=concat(@a,'->',number);

if number>1 then iterate jiaogu; #number 不為 1,繼續循環

else

leave jiaogu; #退出循環

  1. end if;  
  2. end loop jiaogu;   
  3. end $$   
  4. delimiter ;  

 

調用:

  1. call jgguess(9);  
  2. select @a;  

 

 

以上的相關內容就是對MySQL中觸發器和存儲過程的介紹,望你能有所收獲。

 

【編輯推薦】

  1. MySQL觸發器如何正確使用
  2. MySQL修改root密碼并不難
  3. 恢復MySQL數據庫root密碼2方案
  4. MySQL數據表中字段的批量修改與復制
  5. MySQL查詢優化的5個好用方法

 

責任編輯:佚名 來源: 博客園
相關推薦

2010-05-18 14:35:06

MySQL觸發器

2010-05-26 14:55:43

MySQL存儲過程

2010-06-13 09:46:44

MySQL5觸發器

2010-04-26 14:12:23

Oracle使用游標觸

2010-04-07 13:02:14

Oracle 存儲過程

2010-06-04 14:18:10

MySQL 分頁存儲過

2010-05-26 17:57:44

MySQL 觸發器

2010-07-23 14:26:37

SQL Server存

2010-05-18 09:31:05

MySQL修改表

2010-03-30 12:50:42

Oracle存儲

2010-07-21 14:21:53

SQL Server存

2010-08-05 14:34:26

DB2存儲過程

2010-05-18 17:39:13

MySQL alter

2010-05-27 15:11:44

MySQL保存

2010-04-27 15:11:20

Oracle樹的存儲過

2010-05-17 13:28:15

MySQL 復制

2010-04-23 13:29:01

Oracle存儲過程

2010-06-12 13:39:33

MySQL操作blob

2010-05-12 13:45:25

Mysql 復制設置

2010-05-20 17:40:54

MySQL編碼
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: www性色 | 999免费视频 | 久久精品一级 | 国产精品久久久久久吹潮 | 午夜精品久久久久久久星辰影院 | 国产情侣啪啪 | 国产小视频在线观看 | 久久国产成人 | 久久亚洲一区二区 | 国产精品一区二区欧美黑人喷潮水 | 精品久久久久久亚洲综合网 | 日韩欧美在线视频观看 | 国产剧情一区 | 大学生a级毛片免费视频 | 黄视频免费观看 | 99欧美精品 | 中文字幕一区二区三区四区五区 | 伊人精品在线 | 日韩在线播放一区 | 日韩欧美国产精品一区 | 久久精品一级 | 久久精品小视频 | 欧美亚洲高清 | 91亚洲一区| 国产成人99久久亚洲综合精品 | 成人免费区一区二区三区 | 色婷婷久久久久swag精品 | 成人小视频在线观看 | 亚洲精品中文字幕在线观看 | 国产成在线观看免费视频 | 欧美激情综合五月色丁香小说 | 亚洲精品综合一区二区 | 可以在线看的黄色网址 | 精品无码久久久久国产 | 一区二区三区四区视频 | 日韩一区二区三区在线观看视频 | 91亚洲精华国产 | 北条麻妃一区二区三区在线观看 | 91中文字幕在线 | 91美女在线观看 | 6080yy精品一区二区三区 |