一些sql语句的错误记录

*、自己犯的小错误

update语句
错误:
update words w set w.Cid = 1 and w.Sid = 1 
and w.WhiteRule = '**|**|**' 
and w.Work_Status = 'wait' 
and w.Last_Completed_Time = NOW() 
and w.Is_Deleted = 0
and w.CreateTime = NOW()
where w.Sid NOT IN (0);
正确:
UPDATE words  w
set w.Cid = 1
, w.Sid = 1-- 需要变动的地方
, w.WhiteRule = '**|**|**' 
, w.Work_Status = 'wait'
, w.Last_Completed_Time = SYSDATE()
, Is_Deleted = 0
, w.CreateTime = SYSDATE()
WHERE w.Sid is NULl;
2、存储过程中的格式
错误版:
DELIMITER $$ 
DROP PROCEDURE IF EXISTS insertSql $$
CREATE PROCEDURE insertSql()
BEGIN
declare indexSidOut int;-- 内层循环索引900次 -- 5486--6421
declare indexSidIn int;-- 外层循环索引31次
DECLARE fidC int;-- id
DECLARE nameC VARCHAR(200); -- 姓名
SET indexSidIn = 1;
set indexSidOut = 5486;
REPEAT
  select fid INTO fidC , nameC INTO nameC from words where Id = indexSidOut;
    REPEAT-- 内层循环31次
     insert into words(Sid , Fid , Word) VALUES(indexSidIn , fidC , nameC);
      indexSidIn = indexSidIn + 1;
    UNTIL indexSidIn > 31;-- 此处不该有分号
  indexSidOut  = indexSidOut + 1;
UNTIL indexSidOut > 6421;-- 此处不该有分号
END REPEAT; 
END $$
DELIMITER ;

猜你喜欢

转载自lbovinl.iteye.com/blog/2236850