MYSQL´æ´¢¹ý³ÌѧϰС½á
Mysql ´æ´¢Àý³ÌµÄʹÓÃ
Ò»¡¢ ¼ò½é
´æ´¢¹ý³Ì£¨Stored Procedure£©ÊÇÒ»×éΪÁËÍê³ÉÌØ¶¨¹¦ÄܵÄSQLÓï¾ä¼¯£¬¾±àÒëºó´æ´¢ÔÚÊý¾Ý¿âÖС£Óû§Í¨¹ýÖ¸¶¨´æ´¢¹ý³ÌµÄÃû×Ö²¢¸ø³ö²ÎÊý£¨Èç¹û¸Ã´æ´¢¹ý³Ì´øÓвÎÊý£©À´Ö´ÐÐËü¡£´æ´¢¹ý³Ì ÊÇÊý¾Ý¿âÖеÄÒ»¸öÖØÒª¶ÔÏó£¬ÈκÎÒ»¸öÉè¼ÆÁ¼ºÃµÄÊý¾Ý¿âÓ¦ÓóÌÐò¶¼Ó¦¸ÃÓõ½´æ´¢¹ý³Ì¡£
ËäÈ»³£ÓÃÊõÓïÊÇ´æ´¢¹ý³Ì£¨stored procedure£©£¬µ«MySQLʵ¼ÊÉÏʵÏÖÁËÁ½ÖÐÀàÐÍ£¬³ýÁË´æ´¢¹ý³ÌÍ⣬»¹Óд洢º¯Êý£¨stored routine£©,ËüÃÇͳ³ÆÎª´æ´¢Àý³Ì£»
¶þ¡¢»ù±¾¸ñʽ
1¡¢´æ´¢¹ý³Ì
CREATE PROCEDURE ¹ý³ÌÃû ([¹ý³Ì²ÎÊý[,...]])
[ÌØÐÔ ...] ¹ý³ÌÌå
Èç´´½¨: CEATE PROCEDURE p1 (a INT)
SELECT a;
µ÷ÓÃһϣºCALL p1(8);
½«ÏÔʾ£º
+------+
| a |
+------+
| 8 |
+------+
1 row in set (0.00 sec)
2¡¢´æ´¢º¯Êý
CREATE FUNCTION º¯ÊýÃû ([º¯Êý²ÎÊý[,...]])
RETURNS ·µ»ØÀàÐÍ
[ÌØÐÔ ...] º¯ÊýÌå
Èç´´½¨£ºCREATE FUNCTION f1 (x INT)
RETURNS INT
RETURN x; /* ¹ý³Ìº¯ÊýÒ»´ÎÖ»ÄÜ·µ»ØÒ»¸öÖµ
µ÷ÓÃһϣºSELECT f1 (3);
½«ÏÔʾ£º
+-------+
| f1(3) |
+-------+
| 3 |
+-------+
1 row in set (0.00 sec)
3¡¢¹ý³Ì²ÎÊý
[ IN | OUT | INOUT ] ²ÎÊýÃû ²ÎÊýÀàÐÍ
4¡¢º¯Êý²ÎÊý
²ÎÊýÃû ²ÎÊýÀàÐÍ
5¡¢·µ»ØÀàÐÍ
ÓÐЧµÄMySQLÊý¾ÝÀàÐͼ´¿É
6¡¢¹ý³ÌÌå/º¯ÊýÌå¸ñʽÈçÏÂ
BEGIN
ÓÐЧµÄSQLÓï¾ä
END
7¡¢ÌØÐÔ£¨Ò»°ã²»ÒªÇó£©
LANGUAGE SQL
| [NOT] DETERMINISTIC
| { CONTAINS SQL | NO SQL | READS SQL DATA | MODIFIES SQL DATA }
| SQL SECURITY { DEFINER | INVOKER }
| COMMENT 'string'
8¡¢´æ´¢¹ý³ÌÖвÎÊýµÄIN,OUT,INOUTÀàÐÍ
´æ´¢¹ý³Ì¿ÉÒÔ½ÓÊÜÊäÈë²ÎÊý£¬²¢°Ñ²ÎÊý·µ»Ø¸øµ÷Ó÷½¡£²»¹ý£¬¶ÔÓÚÿ¸ö²ÎÊý£¬ÐèÒªÉùÃ÷Æä²ÎÊýÃû¡¢Êý¾ÝÀàÐÍ£¬»¹ÒªÖ¸¶¨´Ë²ÎÊýÊÇÓÃÓÚÏò¹ý³Ì´«µÝÐÅÏ¢£¬»¹ÊÇ´Ó¹ý³Ì´«»ØÐÅÏ¢£¬»òÊǶþÕß¼æÓС£
ΪÉùÃ÷²ÎÊýµÄ×÷Óã¬Ê¹ÓÃÈçÏÂ3¸ö¹Ø¼ü×ÖÖ®Ò»£º
IN : IN²ÎÊýÖ»ÓÃÀ´Ïò¹ý³Ì´«µÝÐÅÏ¢£¬ÎªÄ¬ÈÏÖµ¡£
OUT : OUT²ÎÊýÖ»ÓÃÀ´´Ó¹ý³Ì´«»ØÐÅÏ¢¡£
INOUT £º INOUT²ÎÊý¿ÉÒÔÏò¹ý³
Ïà¹ØÎĵµ£º
×î½ü¹ØÓÚÖÐÎÄÏÔʾÂÒÂëµÄÌù×ӱȽ϶࣬ËùÒÔÒ²×öÁ˸ö×ܽ᣺
¿ÉÒԲο¼Ò»ÏÂÑîÌÎÌΰæÖ÷µÄ¡¶¸÷ÖÖÂÒÂëÎÊÌâ»ã×Ü¡·
http://topic.csdn.net/u/20071124/08/3b7eae69-ed1d-4a77-8895-9930bf3601af.html
MySQL×Ö·û¼¯µÄÔÀí½éÉÜ¡£ÕªÂ¼ÓÚ¹Ù·½Îĵµ¡£http://dev.mysql.com/doc/refman/5.1/zh/charset.html
²»Í¬µÄ±àÂë¸ñʽ»áµ¼ÖÂͬһ×Ö· ......
====================================================
Òý×Ô£ºhttp://blog.sina.com.cn/s/blog_538a9d1901008f9g.html
ʲôÊÇC2¼¶°²È«ÐÔ£¿°²È«ÐԵķÖÀàÊÇÔõÑùµÄ£¿(2008-01-30 17:04:39)
DÀࣺ×îµÍ±£»¤£¬±£Áô¸ø²»ÄÜͨ¹ý¸ü¸ß¼¶±ð¼ì²éµÄϵͳ
C1£º½÷É÷±£»¤£¬ÒªÇóÓлùÓÚÓû§¼¶±ðµÄ¿ØÖÆÀ´±£»¤Êý¾Ý£¬Ö÷Òª·ÀÖ ......
Êý¾Ý¿âÌØµã
££Ê¹ÓÃpartition£¬´æÔÚÉϰٸö·ÖÇø
££½¨±íʱָ¶¨ÁËdata_dirºÍindex_dir£¬Êý¾Ý²»ÊÇ´æ´¢ÔÚĬÈÏλÖ㬶øÊÇÔÚmysqldµÄÊý¾ÝĿ¼ÏÂlinkµ½ÕæÕýµÄÊý¾ÝÎļþ
±¸·Ý»Ö¸´ÒªÇó
££±¸·Ý³öÀ´µÄÊý¾Ý»Ö¸´Ê±Òª»Ö¸´³É²»Í¬µÄ±íÃû
££»Ö¸´³öÀ´µÄÊý¾Ýʵ¼Ê´æ´¢Î»ÖÃÒ²Òª´æ´¢ÔÚÓëÔ±í²»Í¬µÄλÖÃ
ÎÊÌâ
Èç¹ûÖ±½Ómysqldump£sourc ......
//µÃ·Ö¼ÆËãËÄÉáÎåÈë
SELECT ROUND((SUM(getfeng)/SUM(totalfeng))*100) as feng from answerdata WHERE uid='151' AND targetid IS NOT NULL
1.ceil £¨£© /ceiling£¨£© ÏòÉÏÈ¡Õû
Àý£º ceil£¨1.2£© = 2
2.floor £¨£© ÏòÏÂÈ¡Õû
Àý£º floor£¨1.2£© = 1
3.round£¨£© ËÄÉáÎåÈë
&n ......
Ò»¡¢CREATE TABLE ·½·¨
Õû±í¸´ÖÆ # create table бí select * from ¾É±í;
½á¹¹¸´ÖÆ # create table бí select * from ¾É±í where 1<>1;
¶þ¡¢INSERT INTO ·½·¨
µÃµ½½¨±íÓï¾ä # show create table ¾É±í;
н¨±í
¸´ÖÆÊý¾Ýµ½Ð±í INSERT INTO new_table(col1,col2,...) (SELECT col1,col2,... from old_table); ......