MySQL 5.0´æ´¢¹ý³Ì±à³ÌÈëÃÅ
Ê×ÏÈ¿´MySQL 5.0²Î¿¼ÊÖ²áÖйØÓÚ´´½¨´æ´¢¹ý³ÌµÄÓ﷨˵Ã÷£º
CREATE
[DEFINER = { user | CURRENT_USER }]
PROCEDURE sp_name ([proc_parameter[,...]])
[characteristic ...] routine_body
proc_parameter:
[ IN | OUT | INOUT ] param_name type
type:
Any valid MySQL data type
characteristic:
LANGUAGE SQL
| [NOT] DETERMINISTIC
| { CONTAINS SQL | NO SQL | READS SQL DATA | MODIFIES SQL DATA }
| SQL SECURITY { DEFINER | INVOKER }
| COMMENT 'string'
routine_body:
Valid SQL procedure statement
Èç¹ûÄã¶ÔMySQL»¹²»Ì«ÊìϤµÄ»°£¬µ¥µ¥¿´Õâ¸öÓï·¨½á¹¹µ±È»²»×ãÒÔ½øÐÐMySQL´æ´¢¹ý³Ì±à³Ì¡£ÎÒ֮ǰ»ù±¾¶¼ÊÇʹÓÃMS SQL SERVER£¬ËùÒÔÒÔϼǼÎÒÊìϤMySQL´æ´¢¹ý³ÌµÄ¹ý³Ì£¬Ò²ÊÇÖØµã½éÉÜMS SQL SERVERÓëMySQLÇø±ð½Ï´óµÄµØ·½¡£
µÚÒ»²½£¬µ±È»ÊÇд¸öHello WordµÄ´æ´¢¹ý³Ì£¬ÈçÏ£º
CREATE PROCEDURE phelloword()
BEGIN
SELECT 'Hello Word!' AS F;
END;
½«ÉÏÃæ´´½¨phelloword´æ´¢¹ý³ÌµÄÓï¾ä¿½µ½phpMyAdminÖÐÖ´ÐУ¬±¨ÈçÏ´íÎó£º
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 3
ÔÚÕâ¸öÎÊÌâÉÏÎÒ¾À²øÁ˺ܾã¬ÔÚMySQLµÄÃüÁîÐй¤¾ßÖÐÖ´ÐÐͬÑù²»³É¹¦£¬µ«ÊǸù¾ÝÌáʾÐÅÏ¢¿ÉÒÔÖªµÀÖ´ÐÐÔÚ SELECT 'Hello Word!' AS F;´¦½áÊø£¬ºóÃæµÄEND;ûÓÐÖ´ÐУ¬ÕâÏÔÈ»»áµ¼Ö´íÎó¡£
ÕâÀïÐèҪѡÔñÒÔ¸ö·Ö¸ô·û£¬Óï·¨ÈçÏ£ºDELIMITER //
·Ö¸ô·ûÊÇ֪ͨMySQL¿Í»§¶ËÒѾÊäÈëÍê³ÉµÄ·ûºÅ¡£Ò»Ö±¶¼ÊÇÓÓ;”£¬µ«ÊÇÔÚ´æ´¢¹ý³ÌÖв»ÐУ¬ÒòΪ´æ´¢¹ý³ÌÖкܶàÓï¾ä¶¼ÐèÒªÓõ½·ÖºÅ¡£
Òò´ËÉÏÃæµÄ´æ´¢¹ý³Ì¸ÄΪ£º
CREATE PROCEDURE ptest()
BEGIN
SELECT 'Hello Word!' AS F;
END //
ÁíÍâÔÚphpMyAdminÖÐÖ´ÐÐʱ£¬ÔÚDelimiterÎı¾¿òÖÐÌîд //£¬Õâ´Î´æ´¢¹ý³Ì¼´¿É´´½¨³É¹¦¡£
µÚ¶þ²½£¬Ð´Ò»¸ö°üÀ¨²ÎÊý£¬±äÁ¿£¬±äÁ¿¸³Öµ£¬Ìõ¼þÅжϣ¬UPDATEÓï¾ä£¬SELECT·µ»Ø½á¹û¼¯µÄÍêÕûµÄÒ»¸ö´æ´¢¹ý³Ì£¬ÈçÏ£º
CREATE PROCEDURE plogin
(
p_username char(15),
p_password char(32),
&
Ïà¹ØÎĵµ£º
Ê×ÏÈ£¬½¨InnoDBÀàÐÍµÄ±í£¬²ÅÄÜÖ§³ÖÊÂÎñ
$handler = mysql_connect('localhost', '', '');
mysql_select_db('test');
mysql_query('SET AUTOCOMMIT=0'); // ÉèÖÃΪ²»×Ô¶¯Ìá½»²éѯ
mysql_query('START TRANSACTION'); // ¿ªÊ¼²éѯ£¬ÕâÀïÒ²¿ÉÒÔʹÓÃBEGIN
mysql_query("INSERT INTO users VALUES ('ccc')");
mysql_query( ......
MYSQL »ñÈ¡µ±Ç°ÈÕÆÚ¼°ÈÕÆÚ¸ñʽ
»ñȡϵͳÈÕÆÚ£º NOW()
¸ñʽ»¯ÈÕÆÚ£º DATE_FORMAT(date, format)
×¢£º date£ºÊ±¼ä×Ö¶Î
  ......
1£®Ë÷Òý×÷ÓÃ
ÔÚË÷ÒýÁÐÉÏ£¬³ýÁËÉÏÃæÌáµ½µÄÓÐÐò²éÕÒÖ®Í⣬Êý¾Ý¿âÀûÓø÷ÖÖ¸÷ÑùµÄ¿ìËÙ¶¨Î»¼¼Êõ£¬Äܹ»´ó´óÌá¸ß²éѯЧÂÊ¡£ÌرðÊǵ±Êý¾ÝÁ¿·Ç³£´ó£¬²éÑ¯Éæ¼°¶à¸ö±íʱ£¬Ê¹ÓÃË÷ÒýÍùÍùÄÜʹ²éѯËٶȼӿì³ÉǧÉÏÍò±¶¡£
ÀýÈ磬ÓÐ3¸öδË÷ÒýµÄ±ít1¡¢t2¡¢t3£¬·Ö±ðÖ»°üº¬ÁÐc1¡¢c2¡¢c3£¬Ã¿¸ö±í·Ö±ðº¬ÓÐ1000ÐÐÊý¾Ý×é³É£¬Ö¸Îª1¡«1000µÄÊýÖµ£¬² ......
Ö÷ÒªµÄ³ÌÐò£º
package greeds.jdbc.sample;
import greeds.jdbc.util.JDBCUtil;
import java.io.*;
import java.sql.*;
public class MySQLBlobSample {
public static void main(String[] args) throws Exception {
// дÈëÊý¾Ý¿â
/*
*
* Connection ......
Ò»¡¢Ê²Ã´ÊÇË÷Òý£¿
Ë÷ÒýÓÃÀ´¿ìËÙµØÑ°ÕÒÄÇЩ¾ßÓÐÌØ¶¨ÖµµÄ¼Ç¼£¬ËùÓÐMySQLË÷Òý¶¼ÒÔB-Ê÷µÄÐÎʽ±£´æ¡£Èç¹ûûÓÐË÷Òý£¬Ö´ÐвéѯʱMySQL±ØÐë´ÓµÚÒ»¸ö¼Ç¼¿ªÊ¼É¨ÃèÕû¸ö±íµÄËùÓмǼ£¬Ö±ÖÁÕÒµ½·ûºÏÒªÇóµÄ¼Ç¼¡£±íÀïÃæµÄ¼Ç¼ÊýÁ¿Ô½¶à£¬Õâ¸ö²Ù×÷µÄ´ú¼Û¾ÍÔ½¸ß¡£Èç¹û×÷ΪËÑË÷Ìõ¼þµÄÁÐÉÏÒѾ´´½¨ÁËË÷Òý£¬MySQLÎÞÐèɨÃèÈκμǼ¼´¿ÉѸËٵõ ......