내 웹 사이트에서 내 서비스 구성원은 모든 연락처를 저장할 수있는 연락처 데이터베이스를 제공합니다. 이 데이터베이스는 회원에게 더 맞는 맞춤형으로 생각됩니다. 대화 상대를 입력 할 때 이름과 제목과 같은 모든 표준 질문을 묻고 contacts
테이블에 저장합니다. 그런 다음 전화, 주소, 이메일 및 웹 사이트와 같은 추가 필드를 방문하십시오. 그러나 연락처는 여러 사람이 참여할 수 있으므로 멤버가 무제한으로 입장 할 수 있기를 바랍니다. 나는 각 필드에 대해 테이블을 만들어이 작업을 수행했다. contacts_phone, contacts_address, contacts_email, contacts_website
그리고 각 행은 id, parent 및 data를 가졌다.MySQL/PHP : 데이터베이스 레이아웃, 정렬 및 검색
이렇게하면 적절한 검색을 수행하는 것이 매우 어려워졌습니다. 이러한 추가 필드가 연결되는 유일한 방법은 연결된 연락처의 ID를 보유하는 parent
입니다. 또한 다른 버그와 오류가 발생하여 그 아이디어를 무시하고 실패로 간주하기로 결정했습니다.
이제 각 필드의 최대 10 배를 입력 할 때 회원을 제한하기로 결정했습니다. 따라서 테이블 contacts
에는 수백 개의 열 (phone_1_data, photo_2_data, phone_3_data, ect.)이 있으며 지저분하고 잘못되었습니다. 검색, 정렬 및 상호 작용이 훨씬 쉬워 지지만 최상의 방법처럼 보이지는 않습니다.
저는 MySQL에 대한 교육을 많이받지 못했습니다.이 답변으로 다소 혼란 스럽습니다. 어쨌든 예제를 보여줄 수 있습니까? –
고마워, 나는 아직도 'JOIN'을 완전히 이해하지 못한다. 당신의 모범을 보는 것조차 혼란 스럽지만 나는 그것을 제대로 사용하는 법을 배울 수 있도록 그것을 공부하는 데 시간을 할애 할 것입니다. –