mysql에 대해 두 개의 테이블이 있다고 생각했습니다. 하나는 로그인 정보 저장 용이고 다른 하나는 배송 주소 용입니다. 그것은 전통적인 방식입니까 아니면 모든 것이 하나의 테이블에 저장됩니까? 두 테이블의mysql에 고객 데이터를 저장하는 방법 (2 테이블 대 1 테이블)
... I가 배송지 잡아 동일한 ID를 참조 할 수 있도록 테이블 B에 자동으로 복사 테이블 A로부터 열을 방법 ...
mysql에 대해 두 개의 테이블이 있다고 생각했습니다. 하나는 로그인 정보 저장 용이고 다른 하나는 배송 주소 용입니다. 그것은 전통적인 방식입니까 아니면 모든 것이 하나의 테이블에 저장됩니까? 두 테이블의mysql에 고객 데이터를 저장하는 방법 (2 테이블 대 1 테이블)
... I가 배송지 잡아 동일한 ID를 참조 할 수 있도록 테이블 B에 자동으로 복사 테이블 A로부터 열을 방법 ...
그것 경우가있다 이 매번 업데이트 될 것입니다 경우 하나의 주소와, 당신은
**Customer**
customer_id [pkey]
customer_name
login_id
password
shipping_address
같은 단일 테이블 뭔가를 할 수 있습니다 당신이 다음 (여러 방문에서) 단일 고객에 대한 모든 배송 주소를 저장하려면 반면, 다른 테이블 customer_shipping_address를 갖는 것이 좋은 디자인이 될 것입니다.
**Customer**
customer_id [pkey]
customer_name
login_id
password
**Customer_Shipping_Address**
customer_id [fkey to customer]
shipping_address
customer_shipping_address에 기본 배송 주소를 식별하는 추가 플래그가 있으면 좋은 기능입니다. – Rocky
이것은 1 개의 테이블 또는 2 개의 테이블 사용에 관한 귀하의 질문에 대한 내 대답입니다. 이 결정은 요인에 달려 있습니다. 그러나 나는 당신이 2 개의 분리 된 테이블을 사용해야한다고 제안 할 것이다. 로그인 정보는 검색 정보가 배송 정보와 매우 자주 비교되기 때문에 이제 한 테이블에 모든 정보가 있으면 테이블 크기가 커지고 사용자의 로그인 정보가 필요할 때마다이 거대한 테이블을 쿼리해야합니다.
두 테이블을 사용하면 더 좋은 방법이라고 생각합니다. 그런 다음 배송을 원하면 그냥 가입하십시오. 그와 같은 SQL은 다음과 같습니다.
SELECT
table1.id, table2.id, table2.somethingelse, table1.somethingels
FROM
table1 INNER JOIN table2
ON table1.foreignkey = table2.primarykey
WHERE
(some conditions is true)
위의 코드는 배송 페이지 자체에서 실행해야합니다.
고객은 단일 배송지 주소를 가질 수 있습니까? 아니면 여러 개의 배송 주소를 사용할 수 있습니까? – Rocky
지금은 단일 주소. 체크 아웃 할 때마다 업데이트 할 수 있습니다. –