> php教程 > php手册 > mysql 다중 테이블 데이터 삭제 및 관련 데이터 삭제 php 다중 테이블 삭제

mysql 다중 테이블 데이터 삭제 및 관련 데이터 삭제 php 다중 테이블 삭제

WBOY
풀어 주다: 2016-08-26 10:12:49
원래의
2055명이 탐색했습니다.

사용자가 직접 PHP에 통합합니다. 다중 테이블 데이터 및 관련 데이터를 삭제하려면 MYSQL에서 쿼리
삭제를 사용하지 마세요. MySQL에서 데이터를 삭제하는 방법에는 여러 가지가 있습니다. 가장 일반적으로 사용되는 방법은 삭제를 사용하여 레코드를 삭제하는 것입니다. 아래에서는 단일 레코드를 삭제하고 여러 테이블에 연결된 데이터를 삭제하는 몇 가지 간단한 삭제 예를 소개합니다.
1.
조건이 있는 t1에서 삭제합니다. 2. 조건이
인 t1에서 t1을 삭제합니다. 3. 조건이
인 t1,t2에서 t1을 삭제합니다. 4. t1,t2에서 t1,t2를 삭제합니다. 여기서 조건은
처음 3개는 가능하지만 4번째는 불가능합니다.
즉, 단순히 delete 문을 사용하는 것만으로는 여러 테이블의 데이터를 삭제할 수 없지만, 계단식 삭제를 생성하고 두 테이블 사이에 계단식 연결을 설정할 수 있습니다
관계를 삭제하면 한 테이블의 데이터를 삭제하면 다른 테이블의 관련 데이터도 동시에 삭제할 수 있습니다.
1. 데이터 테이블 t2의 ID 값과 일치하는 데이터 테이블 t1의 모든 레코드를 삭제합니다.
코드는 다음과 같습니다
t1.id=t2.id인 t1,t2에서 t1을 삭제하거나 t1.id=t2.id인 t1,t2를 사용하여 t1에서 삭제
2. 데이터 테이블 t2에서 일치하지 않는 레코드를 데이터 테이블 t1에서 찾아 삭제합니다
코드는 다음과 같습니다
t1.id=t2.id에서 t1 왼쪽 조인 T2에서 t1 삭제 t2.id가 NULL이거나
t1.id가 NULL인 경우 t1.id=t2.id에서 t1 LEFT JOIN T2를 사용하여 t1에서 삭제
3. 두 테이블에서 동일하게 녹화된 데이터를 찾아 두 테이블 모두에서 데이터를 삭제합니다
코드는 다음과 같습니다
t1에서 t1,t2 삭제 t1.id=t2.id에서 t1.id=25
ON LEFT JOIN t2 여기에서 삭제된 t1 및 t2의 t1 및 t2는 별칭이 될 수 없습니다.
예:
코드는 다음과 같습니다
table_name에서 t1,t2를 t1로 삭제하고 table2_name을 t1.id=t2.id에서 t2로 왼쪽 조인합니다.
table_name.id=25
데이터에서 실행이 잘못되네요. (MYSQL 버전은 5.0 이상이고, 5.0 에서는 괜찮습니다.)
위 문장은
로 다시 작성됩니다. 코드는 다음과 같습니다
table_name에서 table_name,table2_name을 t1로 삭제하고 table2_name을 t2로 왼쪽 조인
t1.id=t2.id 여기서 table_name.id=25
데이터에서 실행이 잘못되네요(MYSQL 버전이 5.0 미만인데 5.0 에서는 괜찮네요
)
DELETE가 관련 데이터를 삭제하고 계단식 삭제를 구현하는 방법
존재하지 않는 경우 테이블 생성 `dcsmember`(
`id` int(3) auto_increment는 기본 키가 null이 아닙니다.
`name` varchar(12)은 null이 아닙니다.
`password` varchar(40)이 null이 아닙니다.
`phonenumber` 문자(20),
`time` DATETIME NOT NULL,
`jifen` int(8) null이 아님 DEFAULT '20',
`email` varchar(40) NOT NULL,
`power` int(2) NULL이 아님 기본값 '1'
)문자 집합 gb2312";
존재하지 않는 경우 테이블 생성 `sp`(
`spid` int(5) auto_increment는 기본 키가 null이 아닙니다.
`spuserid` int(3) null이 아님,
`spname` varchar(12)이 null이 아닙니다.
`spmoney` float(6) null이 아님,
`spopt` 문자(20)는 null이 아닙니다.
`spsay` varchar(50),
`sptime` 날짜 기본값 '2008-10-01',
`spendor` TINYINT(1) DEFAULT '1',
인덱스( `spuserid` )
)문자 집합 gb2312";

코드는 다음과 같습니다

$sqldel="dcsmember에서 삭제 이메일='$value'";
지금은 회원테이블에서 회원정보를 삭제하고 있어요
, 다른 테이블의 구성원 정보도 삭제해야 합니다. dcsmember.ID는 sp.suserid에 해당하는 외부 코드입니다.
글쓰기
코드는 다음과 같습니다
d.id = s.spuserid의 dcsmember d 내부 조인 sp s에서 d, s를 삭제합니다. 여기서 d.email="xxxxxx"

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 추천
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿