Mysql

Mysql 동적쿼리 결과값 반환

NaHyungMin 2019. 3. 20. 16:43

Mysql에서 동적쿼리를 사용하면서 Row_Count가 동작을 안하길래 당황했다.

찾아보니 해결책은 위치를 execute 밑에 놔야 한다는 것

1
2
3
4
5
6
7
8
9
10
11
12
set @query_string = concat("update user_item_inventory"" set ", $update_coulmn, " = ", $update_coulmn, " - ?"" where user_key = ? and group_row_index = ? and ", $update_coulmn, " >= ", $item_count);
prepare stmt from @query_string;
 
execute stmt using @item_count, @user_key, @group_row_index;
 
if(1 > ROW_COUNT()) then
    ROLLBACK;
    SELECT 1252 as `result`;
    LEAVE proc_label;
end if;
 
deallocate prepare stmt;
cs