戻る

ストアドプロシージャーを作る

<?php
header("Content-type: text/html; charset=utf-8");

define("DBSERVER","localhost");
define("DBUSER","root");
define("DBPASSWORD","root");
define("DBNAME","sampledb");

//DB接続
if(!$con = @mysql_connect(DBSERVER, DBUSER, DBPASSWORD)){
	die("MySQLに接続できませんでした!<br>");
	exit();
}

//DB選択
if(!$selectdb = @mysql_select_db(DBNAME)){
	die(DBNAME . "が見つかりませんでした!<br>");
	exit();
}


//同名の既存ストアドプロシージャを削除するSQLを発行
mysql_query("DROP PROCEDURE resetpageview");

//ストアドプロシージャを生成するSQLを組み立て
$sql = "CREATE PROCEDURE resetpageview(IN flg int, name varchar(50), newcnt int)
BEGIN
IF flg = 1 THEN
UPDATE pageview SET count = newcnt WHERE pagename = name;
ELSEIF flg = 2 THEN
INSERT INTO pageview (pagename, count) VALUES (name, newcnt);
ELSEIF flg = 3 THEN
DELETE FROM pageview WHERE pagename = name;
END IF;
END";

//SQLを発行
if (mysql_query($sql)) {
	echo "ストアドプロシージャを生成しました!";
}
else {
	echo "ストアドプロシージャの生成に失敗しました!";
}

//DB切断
if(!$con = @mysql_close()){
	die("MySQLとの接続を解除できませんでした!<br>");
	exit();
}
?>

inserted by FC2 system