SET @deleteGame = CONCAT('delete from ',YearTable,' WHERE playerid = ',CONVERT(inplayerid, CHAR)); 
    IF @deleteGame IS NOT NULL THEN
PREPARE stmDeleteGame FROM @deleteGame;
EXECUTE stmDeleteGame;
DEALLOCATE PREPARE stmDeleteGame; 
    END IF;我怎么判断上面的语句执行成功

解决方案 »

  1.   

    可以根据 @@error_count 的值判断是否有错误。@@warning_count 可以判断是否有警告。
      

  2.   

    SET @deleteGame = CONCAT('delete from ',YearTable,' WHERE playerid = ',CONVERT(inplayerid, CHAR)); 
    IF @deleteGame IS NOT NULL THEN
    PREPARE stmDeleteGame FROM @deleteGame;
    EXECUTE stmDeleteGame;
    SELECT @@error_count;
    DEALLOCATE PREPARE stmDeleteGame; 
    END IF;????????
      

  3.   


    问一下:
    @@error_count是不是只是当前语句(离@@error_count最近的语句)错误?
    如,
    insert....
    update...
    select @@error_count
    假设insert、update都错误了,上面select @@error_count是多少?
      

  4.   

    show global status like 'prepare';