DB관련
본문
set_1 테이블에 a1,a2,a3 칼럼이 있는데
특정 페이지에서 새로고침하면 set_1 테이블에 계속 insert 됩니다.
근데 문제가..insert 만 되고 update 나 delet 는 저의 한계때문에 만들수가 없었습니다..
새로고침 하여 받아오는 값과 db에있는 값이 (칼럼이 하나라도 맞으면) 같다면 update
그리고 db에 값이 없으면 insert, 마지막으로 db에 값은 있는데 새로고침 하여 받아오는 값이 없다면
db에있는 값을 delet 할 수 있을까요?..
답변 2
기본적으로 duplicate key 라던지 for update 같은걸 사용할려면
transaction이 제공 되어야 합니다 (lock 기능의 필요성 때문에)
따라서 위의 기능을 사용할려면 엔진을 innoDB 로 사용해야 하기에 말씀드린거구요
http://powerhan.tistory.com/175
참조하세요.
일단 DELETE 는 추후로 생각하고..
SELECT FOR UPDATE 를 해보세요.
https://dev.mysql.com/doc/refman/5.0/en/innodb-locking-reads.html
(아.. innoDB 사용하시는거 맞으시죠?)
수정합니다.
duplicate key 가 우선이겠군요..
https://dev.mysql.com/doc/refman/5.0/en/insert-on-duplicate.html
답변을 작성하시기 전에 로그인 해주세요.