Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/293.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用mysql存储过程更新多行 $UserId=$obj[“UserId”]; $CalendarId=$obj[“arrayOfCalendarIdInStrings”]; $Calendars=分解(“,”,$CalendarId); $Count=计数($Calendars); 对于($i=0;$i_Php_Mysql_Stored Procedures - Fatal编程技术网

Php 使用mysql存储过程更新多行 $UserId=$obj[“UserId”]; $CalendarId=$obj[“arrayOfCalendarIdInStrings”]; $Calendars=分解(“,”,$CalendarId); $Count=计数($Calendars); 对于($i=0;$i

Php 使用mysql存储过程更新多行 $UserId=$obj[“UserId”]; $CalendarId=$obj[“arrayOfCalendarIdInStrings”]; $Calendars=分解(“,”,$CalendarId); $Count=计数($Calendars); 对于($i=0;$i,php,mysql,stored-procedures,Php,Mysql,Stored Procedures,如何转换为Mysql存储过程将查询转换为存储过程: $UserId = $obj ["userid"]; $CalendarId = $obj ["arrayOfCalendarIdInStrings"]; $Calendars = explode ( ",", $CalendarId ); $Count = count ( $Calendars ); for($i = 0; $i < $Count; $i ++) { // Update Q

如何转换为Mysql存储过程

将查询转换为存储过程:

$UserId = $obj ["userid"];
$CalendarId = $obj ["arrayOfCalendarIdInStrings"];
$Calendars = explode ( ",", $CalendarId );
$Count = count ( $Calendars );
for($i = 0; $i < $Count; $i ++) {
                        // Update Query
            $query = "UPDATE calendars SET `isSelected` = '1' WHERE `calendar_id` = '$Calendars[$i]' AND  user_id='$UserId'";
            $update = mysql_query ( $query );
        }
然后,在php脚本中,您需要执行以下操作:

DELIMITER //

DROP PROCEDURE IF EXISTS myProcedure//
CREATE PROCEDURE myProcedure (
  IN vCalendarID int(11),
  IN vUserID int(11)
)

BEGIN

 UPDATE calendars SET `isSelected` = '1' WHERE `calendar_id` = vCalendarID AND  user_id = vUserID;

END//

DELIMITER ;

请注意,
mysql.*
函数已被弃用。改用mysqli或PDO。

为什么要将一个简单的update语句转换为存储过程?在循环中,如果有很多记录,它可能会变慢,并且您认为将存储过程放入循环中会更快?你们错了。但我们怎样才能放入存储过程呢?请帮我
$query = "CALL myProcedure('".$Calendars[$i]."','".$UserId."');";
$update = mysql_query ( $query );