2011-03-04 2 views
0

기존 테이블이 있습니다. A. 외래 키를 사용하여 기존 테이블 A의 모든 값 또는 특정 (열) 값을 테이블 B에 추가한다고 가정합니다. MySQL에서 어떻게합니까? 테이블 A에 새로운 삽입 또는 업데이트가 있으면 테이블 B에 자동으로 삽입해야합니다.MySQL에서 한 테이블의 값을 다른 테이블에 자동으로로드하는 방법 ..?

+0

는 왜? 왜 그냥 뷰를 사용하여 값을 중복 하시겠습니까? http://dev.mysql.com/doc/refman/5.0/en/create-view.html –

답변

0

삽입/업데이트 트리거를 사용할 수 있습니다.

0

왜 그렇게하고 싶습니까? 언급 한 테이블 B의 forign 키를 사용하여 테이블 A의 데이터를 참조하지 않는 이유는 무엇입니까?

+0

그런 다음 표 A에서 표 B로 동일한 값을 삽입했습니다. 자동적 인 방법이 있다면 항상 더 좋다. – Raju

+0

그래, 질문은 : 어쨌든 외래 키를 통해 조인 할 수 있기 때문에 두 테이블에서 같은 값을 필요로하는 이유는 무엇입니까? – Thomas

1

표 A의 변경 사항에서 표 B를 자동으로 업데이트하려면 MySQL이 지원하지만 phpMyAdmin에는 트리거가 필요합니다. 당신이 임시으로 표 A에서 표 B에 행을 삽입 찾는 대신 경우 그

INSERT INTO TABLEA (COL1, COL2, COL3) 
SELECT FROM TABLEB (COL1, COL2, COL3) 
WHERE (SELECT COUNT(*) FROM TABLEA WHERE TABLEA.COL1 = TABLEB.COL1) = 0 

위의 SQL은 TableA의에 TableB의에서 간단한 복사를 수행 간단합니다. WHERE 절은 아직 존재하지 않는 레코드 만 삽입되도록합니다.

0

insert into tableb(columns) select columns from tablea

관련 문제