mysql 텍스트 필드에 배열을 JSON 문자열로 저장하는 것이 좋은 방법인지 궁금합니다.PHP/MySQL - 배열 데이터를 JSON으로 저장하는 것은 좋지 않습니까?
사용자가 인보이스에 무제한의 제품을 추가 할 수있는 인보이스를 생성 중입니다. 양식이 제출되면 모든 빈 항목 등이 제거되지만 일반적으로 2 ~ 5 개 항목이 남습니다. 각 항목에는 SKU, 가격, 이름 및 설명이 있습니다.
이 상황에 대한 나의 옵션은 (1) 새 제품 테이블을 만들고, 새 행으로 각 항목을 추가하고, 송장 테이블과 연결하고, 데이터에 액세스 할 때 두 테이블을 호출하는 것입니다. 또는 (2) 모든 제품 데이터를 단일 JSON 텍스트 필드로 송장 테이블에 저장 한 다음 다른 테이블을 만들거나 액세스하지 않습니다.
저는 MySQL 프로그래밍에있어 매우 엄격하기 때문에 MySQL에서 JSON을 사용하는 것이 눈살을 찌게 할 것입니다. 내가 맞습니까? 누군가가 이것에 대해 밝힐 수 있습니까?
답장을 보내 주셔서 감사합니다. 이것은 실제로 실제로 완벽합니다. 제품별로 검색/정렬을 허용 할 때까지는 괜찮을 것입니다. – Tim
데이터베이스 논리를 구현하기 시작하면 잘못된 결과가 발생합니다. 그것은 SQL 데이터베이스로 작업 할 때의 나의 경험 법칙입니다. – tjameson
그래도 괜찮을 지 모르겠다. 당신이 말한 것과 기본적으로 맞지만, 이와 같은 제품을 구할 때, 당신은 어떤 주문이 SKU xxx인지를 알고 싶을 것입니다. 또는 주문에 제품 라인을 쉽게 추가하십시오. 또는 정말로 모든 것을하십시오. id, orderid, sku, price, name, descripiton 필드와 함께 order-rows-order를 가진 테이블을 추가하는 것은 정말로 어렵지 않습니다. 어쩌면 더 나중에. 나는 그렇게하지 않을 이유가 없다. 이 표를 결합하지 않으면 성능 문제가 발생합니다. – Nanne