最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MYSQL批量插入數(shù)據(jù)的實(shí)現(xiàn)代碼

 更新時(shí)間:2008年10月11日 22:43:05   作者:  
非常的實(shí)現(xiàn)原理,代碼較多,建議大家仔細(xì)看看。

也可以給區(qū)塊起別名,如:
lable:begin
...........
end lable;
可以用leave lable;跳出區(qū)塊,執(zhí)行區(qū)塊以后的代碼
2.條件語(yǔ)句
if 條件 then
statement
else
statement
end if;
3.循環(huán)語(yǔ)句
(1).while循環(huán)
[label:] WHILE expression DO
statements
END WHILE [label] ;
(2).loop循環(huán)
[label:] LOOP
statements
END LOOP [label];
(3).repeat until循環(huán)
[label:] REPEAT
statements
UNTIL expression
END REPEAT [label] ;
五.其他常用命令
1.show procedure status
顯示數(shù)據(jù)庫(kù)中所有存儲(chǔ)的存儲(chǔ)過(guò)程基本信息,包括所屬數(shù)據(jù)庫(kù),存儲(chǔ)過(guò)程名稱(chēng),創(chuàng)建時(shí)間等
2.show create procedure sp_name
存儲(chǔ)過(guò)程創(chuàng)建語(yǔ)法:
CREATE PROCEDURE procedure_name ([parameter[,...])
[LANGUAGE SQL]
[ [NOT] DETERMINISTIC ]
[{CONTAINS SQL|MODIFIES SQL DATA|READS SQL DATA|NO SQL}]
[SQL SECURITY {DEFINER|INVOKER} ]
[COMMENT comment_string]
procedure_statements
可用SHOW PROCEDURE STATUS 或 SHOW CREATE PROCEDURE 來(lái)查看存儲(chǔ)過(guò)程信息
另,系統(tǒng)表INFORMATION_SCHEMA.ROUTINES也包含了存儲(chǔ)過(guò)程的一些信息
同樣地,函數(shù)也可以使用同樣方式查看(SHOW FUNCTION STATUS)
函數(shù)的創(chuàng)建
CREATE FUNCTION function_name (parameter[,...])
RETURNS datatype
[LANGUAGE SQL]
[ [NOT] DETERMINISTIC ]
[ {CONTAINS SQL | NO SQL | MODIFIES SQL DATA | READS SQL DATA} ]
[ SQL SECURITY {DEFINER|INVOKER} ]
[ COMMENT comment_string ]
語(yǔ)句體
函數(shù)與存儲(chǔ)過(guò)程基本一樣,其區(qū)別主要有:
1、 要使用RETURNS指定返回類(lèi)型
2、 函數(shù)必須返回值,且在語(yǔ)句體中使用RETURN返回(注意:指定返回類(lèi)型用RETURNS,返回值用RETURN)
3、 參數(shù)不區(qū)分IN,OUT,全部為IN類(lèi)形
例:
CREATE FUNCTION cust_status(in_status CHAR(1))
RETURNS VARCHAR(20)
BEGIN
DECLARE long_status VARCHAR(20);
IF in_status = 'O' THEN SET long_status='Overdue';
ELSEIF in_status = 'U' THEN SET long_status='Up to date';
ELSEIF in_status = 'N' THEN SET long_status='New';
END IF;
RETURN(long_status);
END;
調(diào)用:
SELECT cust_status('O');
觸發(fā)器
CREATE [DEFINER={user|CURRENT_USER}] TRIGGER trigger_name
{BEFORE|AFTER} {UPDATE|INSERT|DELETE}
ON table_name
FOR EACH ROW
trigger_statements
意義:當(dāng)對(duì)表table_name執(zhí)行update,insert,delete操作之前(before)或之后(after)時(shí)觸發(fā)語(yǔ)句trigger_statements操作
例:
mysql> CREATE TRIGGER account_balance_au
AFTER UPDATE ON account_balance FOR EACH ROW
BEGIN
DECLARE dummy INT;
IF NEW.balance<0 THEN
SET NEW.balance=NULL;
END IF;
END
上述觸發(fā)器表示:當(dāng)更新表account_balance之后,如果更新的值balance小于0,則將它改為NULL,
注:如果為OLD.balance則表示更新前的原值

相關(guān)文章

最新評(píng)論

大同市| 潼南县| 临夏市| 永登县| 商水县| 讷河市| 昆明市| 克什克腾旗| 洞口县| 枣强县| 大关县| 泰州市| 南部县| 互助| 辽源市| 瑞金市| 武威市| 乌鲁木齐市| 武汉市| 南宁市| 武冈市| 谢通门县| 廉江市| 陆良县| 榕江县| 衡东县| 嵊泗县| 苍梧县| 大竹县| 新津县| 穆棱市| 勃利县| 牟定县| 田林县| 平谷区| 灵石县| 仁布县| 东至县| 克什克腾旗| 武功县| 将乐县|