十年網(wǎng)站開發(fā)經(jīng)驗 + 多家企業(yè)客戶 + 靠譜的建站團(tuán)隊
量身定制 + 運營維護(hù)+專業(yè)推廣+無憂售后,網(wǎng)站問題一站解決
創(chuàng)建存儲過程
讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價值的長期合作伙伴,公司提供的服務(wù)項目有:域名與空間、網(wǎng)頁空間、營銷軟件、網(wǎng)站建設(shè)、定結(jié)網(wǎng)站維護(hù)、網(wǎng)站推廣。
mysql
delimiter
$
--
delimiter
$是設(shè)置
$為命令終止符號,代替默認(rèn)的分號,因為分號有其他用處.
mysql
create
procedure
sp_test(IN
pi_id
int,
OUT
po_name
varchar(10))
-
begin
-
select
*
from
test.tb_test;
-
select
tb_test.name
into
po_name
from
test.tb_test
where
tb_test.id
=
pi_id;
-
end
-
$
Query
OK,
rows
affected
(0.00
sec)
mysql
delimiter
;
--
恢復(fù)分號作為分隔終止符號
5.調(diào)用存儲過程
mysql
set
@po_name='';
Query
OK,
rows
affected
(0.00
sec)
mysql
call
sp_test(1,@po_name);
DELIMITER $$
USE `test`$$
DROP PROCEDURE IF EXISTS `proc_now_time`$$
CREATE DEFINER=`root`@`%` PROCEDURE `proc_now_time`(OUT `now_time` TEXT)
BEGIN
#Routine body goes here...
DECLARE
now_time TEXT;
select name ,age from test1,test2 INTO now_time;
SELECT now_time;
END$$
DELIMITER ;
使用MySQL編程和SQL Server基本思想是一致的,語法有較大的區(qū)別。SQL Server不管是條件、循環(huán)等區(qū)塊仍然要使用begin與end作為起始和結(jié)束的標(biāo)識,而MySQL則直接用END something(如while,if,loop),當(dāng)然,由于自己接觸MySQL并不長,沒有使用SQL Server那么熟練,所以寫這些也是非?;A(chǔ)的部分,而在實際問題中會千變?nèi)f化,所以還是需要更多的實踐來不斷提高。
1、函數(shù)必須指定返回值,且參數(shù)默認(rèn)為IN類型。
2、存儲過程沒返回值,參數(shù)可以是 IN,OUT,IN OUT類型,有的人可能會理解成OUT 也算是返回值。
3、調(diào)用方式:函數(shù) select my_fun() ;過程 call my_pro( ) ;
4、DEMO
mysql call my_pro(1,2,@c);
Query OK, 0 rows affected (0.00 sec)
mysql select @c;
+------+
| @c |
+------+
| 3 |
+------+
1 row in set (0.00 sec)
mysql select my_fun(1,2);
+-------------+
| my_fun(1,2) |
+-------------+
| 3 |
+-------------+
1 row in set (0.00 sec)
private function loaderHandler(event:*):void {
switch(event.type) {
case Event.COMPLETE:
trace(_loader.data.result);
break;
case Event.OPEN:
trace("open: " + event);
break;
case ProgressEvent.PROGRESS:
trace("progress: " + event);
break;