계정이 2 개인 경우 : 계정 및 당좌 대월 계정을 저장하고 "from_account"열에 계정 ID 또는 당좌 대월 중 하나와 동일한 값만 가질 수있는 테이블 트랜잭션이 있습니다. 계정 ID, 외래 키 제약 조건을 어떻게 설정해야합니까? 당좌 대월 계정 ID를 저장하는 &이 충돌 할 수 있으므로 더 좋은 스키마 디자인이 있습니까? 구원의 계정 테이블과 다른 참조 당좌 계정 테이블을 참조하는 하나 : 임 사용 MySQL은 BTW 고맙습니다 더 나은 스키마 디자인은 트랜잭션 테이블의 두 가지 열이하는 것입니다MySQL : 1 열이 2 개의 다른 테이블을 참조합니다
1
A
답변
1
을 :). 물론이 열은 nullable이어야하며 그 중 하나만 다른 테이블의 실제 행을 가리 킵니다. 그러나이 디자인을 사용하면 참조 무결성 제약 조건을 적용 할 수 있습니다.
또 다른 옵션은 두 개의 계정 테이블을 하나의 테이블로 병합하는 것입니다. 특히 많은 유사한 열이있는 경우 더욱 그렇습니다.
0
추가 열 ACCOUNT_TYPE
을 정의하고 UNIQUE CONSTRAINT
을 FROM_ACCOUNT
및 ACCOUNT_TYPE
열을 결합하여 설정할 수 있습니다. ACCOUNT_TYPE
에 CHECK CONSTRAINT
을 추가하여 값을 1,2로 제한 할 수도 있습니다.
또는 참조 된 테이블마다 하나의 열을 정의하고 CHECK CONSTRAINT
을 정의하여 동시에 둘 다 채울 수 없도록하십시오.
마지막으로 두 계정 테이블간에 큰 차이가없는 경우 두 계정 테이블을 병합하는 것이 좋습니다.
관련 문제
- 1. MySQL 오류 "피연산자에 1 개의 열이 있어야합니다."
- 2. MySQL 쿼리 2 개의 관계 테이블이있는 2 개의 테이블을 결합하십시오.
- 3. 하나의 쿼리에서 2 개의 테이블을 검색 MYSQL
- 4. MYSQL 내가 데이터의 세 개의 열이 내 데이터베이스에서 테이블을 쿼리
- 5. sqlce에서 2 개의 테이블을 1 개의 테이블에 결합하는 방법은 무엇입니까?
- 6. PHP/MySQL 2 개의 MySQL 테이블을 삽입하거나 업데이트하는 방법은 무엇입니까?
- 7. 오류 코드 : 1241 피연산자에 1 개의 열이 있어야합니다. MySQL
- 8. DataGrid의 다른 열 앞에 2 개의 확인란 열이 있어야합니다.
- 9. 2 개의 LambdaExpressions을 1 개의 LamdaExpression에 결합하기
- 10. 2 개의 MySQL 테이블을 결합하는 방법? (다 대일 관계가)
- 11. MYSQL 두 개의 다른 테이블을 기반으로하는 테이블을 업데이트하는 트리거
- 12. ISO 3166-1 알파 2 MySQL 데이터베이스는
- 13. 최대 명령을 사용하여 1 또는 2 개의 테이블을 결합하십시오.
- 14. 다른 데이터베이스의 2 개의 테이블 동기화 - MySQL
- 15. 하나의 열에서 2 개의 다른 데이터를 가져 와서 2 개의 열로 개별적으로 표시하는 MySql 쿼리
- 16. perl을 사용하는 2 개의 mysql 테이블을 비교하거나 결합하지 않는 것
- 17. 두 개의 열이 다른 테이블에서 모두 선택
- 18. MySQL 3 개의 열이 같을 때 두 개의 큰 테이블을 결합하십시오.
- 19. 2 개의 테이블을 결합하는 SQL 쿼리
- 20. 하나의 테이블을 기반으로 2 개의 테이블을 결합하십시오.
- 21. 2 개의 MySQL 서버
- 22. 2 개의 테이블을 merk_id로 결합하십시오.
- 23. mysql은 2 개의 데이터베이스에서 2 개의 테이블을 동기화합니다.
- 24. Qt : 외래 키 열이 여러 개의 다른 테이블을 가리키는 테이블의 데이터보기
- 25. 두 개의 다른 MySql 쿼리에서 두 개의 다른 배열 병합
- 26. 1 개의 mysql 쿼리를 만들려면
- 27. 열이 여러 개의 템플릿으로 채워지는 mediawiki 테이블을 만들 수 있습니까?
- 28. 2 개의 임시 테이블을 함께 추가하는 방법
- 29. 처음으로 3 개의 mysql 테이블을 쿼리하려면
- 30. 2 개의 URL을 1 개의 처리기로 라우팅합니다.