CREATE PROCEDURE [dnt_deleteps]
@index int,
@pmidlist varchar(1000)='',
@userid int=0
AS
DECLARE @strSQL varchar(5000) IF @index=0
BEGIN
GOTO UserDeletePM
END
UserDeletePM: SET @strSQL='DELETE FROM [dnt_pms] WHERE [pmid] IN (' + @pmidlist + ') AND [userid]=' + STR(@userid)请问上述的MSSQL存储过程要改为mysql的
改成这样的对吗?
CREATE PROCEDURE dnt_deleteps()
declare index int,
declare pmidlist varchar(1000)='',
declare userid int=0
DECLARE strSQL varchar(5000) IF index=0
BEGIN
GOTO UserDeletePM
END
UserDeletePM: SET strSQL='DELETE FROM [dnt_pms] WHERE [pmid] IN (' + pmidlist + ') AND [userid]=' + STR(userid)
@index int,
@pmidlist varchar(1000)='',
@userid int=0
AS
DECLARE @strSQL varchar(5000) IF @index=0
BEGIN
GOTO UserDeletePM
END
UserDeletePM: SET @strSQL='DELETE FROM [dnt_pms] WHERE [pmid] IN (' + @pmidlist + ') AND [userid]=' + STR(@userid)请问上述的MSSQL存储过程要改为mysql的
改成这样的对吗?
CREATE PROCEDURE dnt_deleteps()
declare index int,
declare pmidlist varchar(1000)='',
declare userid int=0
DECLARE strSQL varchar(5000) IF index=0
BEGIN
GOTO UserDeletePM
END
UserDeletePM: SET strSQL='DELETE FROM [dnt_pms] WHERE [pmid] IN (' + pmidlist + ') AND [userid]=' + STR(userid)
mysql> CREATE PROCEDURE dnt_deleteps()
-> begin
-> declare `index` int;
-> declare pmidlist varchar(1000) default '';
-> declare userid int default 0;
->
-> DECLARE strSQL varchar(5000);
->
-> IF `index`=0 then
-> SET strSQL= concat('DELETE FROM [dnt_pms] WHERE [pmid] IN (' , pmidlist , ') AND [userid]=' , userid);
->
-> END IF;
-> end;
->
-> //
Query OK, 0 rows affected (0.23 sec)mysql>
MySQL官方文档 http://dev.mysql.com/doc/refman/5.1/zh/index.html