어떤 테이블이 업데이트 될때 마다 다른 테이블도 동일하게 업데이트 해야 한다면?
1번
php에서 본테이블의 데이타를 가져온다음
addslases 내지는 mysql_real_escape_string 을 사용 하여 데이타를 변환후
다른 테이블에 업데이트 한다.
2. 다음과 비슷한 sql 문으로 한방에 처리한다.
$sql = "update 복사될테이블 a, 원본테이블 b set
a.wr_subject=REPLACE(b.wr_subject, \"'\", \"\\'\")
, a.wr_content=REPLACE(b.wr_content, \"'\", \"\\'\")
, a.wr_content=REPLACE(b.wr_content, \"'\", \"\\'\")
, a.wr_name=REPLACE(b.wr_name, \"'\", \"\\'\")
where a.wr_id=$wr_id and a.wr_id=b.wr_id";
3. 기타 다른 의견.
|
댓글을 작성하시려면 로그인이 필요합니다.
로그인
댓글 19개
트리거 사용도 괜찮다고 생각합니다
여러 가지 경우 제한은 없다고 나와 있는데
실제로 잘되는지 궁금해서요.
left 조인으로도 예전에 해봣었는데. 1:다는 잘 모르겟습니다.
구글에서 자료찾다보니 이런것도 있네요.
당근 4.x버전은 안먹을것같고..
1
팁의 뜻은 한 게시판에 글을 올리면 다른 게시판에도 글이 올라간다는 뜻이지요?
2
게시판 스킨의 write_update.skin.php 에 팁을 기록한 후 사용한다는 말씀이지요?
3
\"'\", \"\\'\" 이부분도 그대로 드래그복사사용하면 되나요?
4
2,3번대로 했는대도 적용이 안되면 "진정한승리님"댓글처럼 mysql버전의 문제인가요?
5
"복사될테이블"이 여러개일 경우는 어떻게 해야하는가요?
mysql 버전은 크게 상관없는 걸로 나오네요
복사될 테이블이 여러개일경우 여러번 해야 할거 같습니다.
1
a게시판에서 글을 올린 후 이 글이 b게시판에도올라가게 한다면
복사될테이블 = b, 원본테이블=a 인가요?
2
wr_1~50 여분필드도 다른 작업없이 이런 식으로 가능한가요?
3
a게시판에서 글을 올리는 중 여분필드에 기록하지 않은 것이 있어도 b게시판도 없글되나요?
아무런 수정이 없는 깨끗한 게시판으로 실험한 후 다시 질문드리겠습니다.
다음과 같이 했습니다.
1
diary_ok 게시판과 diary_chan 게시판은 같은 basic게시판스킨을 사용합니다.
2
write_update.skin.php 에 유창화님의 팁을 다음과 같이 드래그입력 후 게시판이름을 넣어주었습니다.
----------------------
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
$sql = "update g4_write_diary_ok a, g4_write_diary_chan b set
a.wr_subject=REPLACE(b.wr_subject, \"'\", \"\\'\")
, a.wr_content=REPLACE(b.wr_content, \"'\", \"\\'\")
, a.wr_name=REPLACE(b.wr_name, \"'\", \"\\'\")
where a.wr_id=$wr_id and a.wr_id=b.wr_id";
?>
3
diary_chan 에 글을 입력합니다.
--------------------
그래도 diary_ok 게시판에는 아무런 변화가 없습니다.
혹시나 해서 diary_ok 게시판의 스킨을 write_update.skin.php 없는 것을 사용해도 마찬가지입니다.
http://www.iwoman.or.kr/bbs/board.php?bo_table=diary_ok
http://www.iwoman.or.kr/bbs/board.php?bo_table=diary_chan
을 일단 넣어야 할거 같고요
제가 위에 질문에 착각한거 같습니다.
게시판 복사에 해당하는 내용이 아닙니다.
데이타를 인서트 시키는 것이 아니라
동일한 wr_id가 두 테이블에 존재할때
원본테이블의 데이타가 변화될때
다른 테이블 역시 동일하게 업데이트 한다는 내용입니다.
즉, 위의 저 내용은 new 테이블 같은 곳에
게시판 내용이 수정될때
동일하게 같이 수정한다는 그런 내용입니다.
게시판 내용을 복사한다는 내용이 아닙니다.