유

어떤 테이블이 업데이트 될때 마다 다른 테이블도 동일하게 업데이트 해야 한다면?

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_name=REPLACE(b.wr_name, \"'\", \"\\'\")
        where a.wr_id=$wr_id and  a.wr_id=b.wr_id";
 
3. 기타 다른 의견.
|

댓글 19개

호곡~ 좋은 정보 감사요.
3.기타다른의견
트리거 사용도 괜찮다고 생각합니다
좋은 의견 감사합니다.
요걸로 인해서 코드가 한결 간결해지겠네요 ㅎㅎ
혹시 left join이나, 1:M인 경우도 잘 되나요?
이건 일대일 둘다 동일키값이 존재할때만 동작합니다.
http://dev.mysql.com/doc/refman/5.5/en/update.html
여러 가지 경우 제한은 없다고 나와 있는데
실제로 잘되는지 궁금해서요.
네 위에 저 쿼리는 그렇구요. 1:1 인경우 키값이 있을때만 존재하고요
left 조인으로도 예전에 해봣었는데. 1:다는 잘 모르겟습니다.
http://docs.cena.co.kr/?mid=textyle&document_srl=18342
구글에서 자료찾다보니 이런것도 있네요.
InnoDB에서만 되는거 아닐까요? 확인해봐야곘네요..
당근 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
sql_query($sql);

을 일단 넣어야 할거 같고요

제가 위에 질문에 착각한거 같습니다.
게시판 복사에 해당하는 내용이 아닙니다.

데이타를 인서트 시키는 것이 아니라
동일한 wr_id가 두 테이블에 존재할때
원본테이블의 데이타가 변화될때
다른 테이블 역시 동일하게 업데이트 한다는 내용입니다.

즉, 위의 저 내용은 new 테이블 같은 곳에
게시판 내용이 수정될때
동일하게 같이 수정한다는 그런 내용입니다.

게시판 내용을 복사한다는 내용이 아닙니다.
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

8,188건
+
제목 글쓴이 날짜 조회
12-03-19 조회 3,563
12-03-16 조회 4,099
12-03-14 조회 3,980
12-03-13 조회 3,591
12-03-13 조회 4,444
12-03-12 조회 5,535
12-03-12 조회 1만
12-03-08 조회 6,100
12-03-06 조회 1.1만
12-03-06 조회 3,803
12-03-06 조회 6,312
12-03-02 조회 5,104
12-02-29 조회 3,652
12-02-27 조회 4,163
12-02-22 조회 3,704
12-02-20 조회 3,676
12-02-20 조회 6,764
12-02-01 조회 3,294
12-01-30 조회 8,834
12-01-29 조회 3,311
12-01-24 조회 3,642
12-01-21 조회 3,294
12-01-10 조회 3,754
11-12-26 조회 3,669
11-12-23 조회 5,090
11-12-23 조회 4,743
11-12-23 조회 4,343
11-12-23 조회 8,049
11-12-22 조회 3,787
11-12-17 조회 3,832
11-12-12 조회 3,245
11-12-08 조회 7,767
11-12-08 조회 3,601
11-12-07 조회 3,856
11-12-06 조회 5,620
11-12-02 조회 3,567
11-12-01 조회 3,183
11-11-30 조회 6,978
11-11-26 조회 3,932
11-11-24 조회 4,687
11-11-22 조회 3,069
11-11-22 조회 6,689
11-11-18 조회 5,113
11-11-16 조회 3,491
11-11-14 조회 3,510
11-11-12 조회 3,992
11-11-08 조회 3,323
11-11-06 조회 1만
11-11-06 조회 3,902
11-11-03 조회 5,589
11-11-02 조회 5,864
11-11-01 조회 9,382
11-10-19 조회 2,880
11-10-17 조회 2,673
11-10-10 조회 2,642
11-10-07 조회 3,405
11-10-06 조회 3,995
11-10-06 조회 2,550
11-10-02 조회 3,306
11-09-08 조회 4,317
11-09-08 조회 2,694
11-09-07 조회 2,665
11-09-02 조회 2,763
11-09-01 조회 3,707
11-08-28 조회 3,596
11-08-23 조회 3,424
11-08-22 조회 2,844
11-08-22 조회 2,433
11-08-13 조회 2,491
11-08-05 조회 2,930
11-08-03 조회 4,139
11-07-03 조회 2,618
11-06-15 조회 3,265
11-06-15 조회 3,096
11-05-15 조회 2,904
11-05-11 조회 5,629
11-04-12 조회 3,049
11-01-27 조회 3,871
11-01-26 조회 2,664
11-01-26 조회 4,504
11-01-18 조회 2,715
10-11-23 조회 2,950
10-10-24 조회 4,763
10-09-15 조회 4,452
10-09-07 조회 3,440
10-08-27 조회 4,117
10-08-20 조회 7,001
10-07-30 조회 5,683
10-06-30 조회 2,945
10-06-11 조회 4,701
10-06-11 조회 3,393
10-05-15 조회 4,234
10-05-10 조회 2,921
10-03-19 조회 5,465
10-03-05 조회 5,224
10-02-17 조회 5,658
09-11-21 조회 6,974
09-11-09 조회 4,041
09-11-04 조회 6,768
09-10-26 조회 3,894