데이터베이스에있는 제품에 대한 테이블을 가정합니다. 이제 제품에는 이미지 이름 "image.jpg"를 배치 할 "이미지"필드가 있습니다. 이제는 동일한 제품의 이미지를 두 개 이상 표시하려고합니다. image1.jpg, image2.jpg, image3.jpg.이 레코드를 단일 필드의 해당 제품 테이블에 어떻게 추가 할 수 있으며 PHP로 구현하여 이러한 이미지를 표시하는 방법은 무엇입니까? 중형, 대형, 초대형 등과 같은 제품의 크기면에서 동일한 시나리오입니다.데이터베이스에있는 엔티티에 둘 이상의 이미지 추가
1
A
답변
0
BLOB를 저장하는 대신 파일 이름을 저장하는 것이 장단점을 이미 알고 있다고 가정합니다.
이것은 1 대 다수 관계로 들립니다. 최소한 제품 테이블의 파일 이름과 외래 키 (FK)를 보유하는 테이블이 필요합니다. 그런 다음 동일한 제품 FK를 가리키는 여러 개의 이미지를 가질 수 있습니다. 내가 SQL 주입 문제를 무시하고있어
SELECT img.fileName
FROM image_table AS img
JOIN product_table prod ON prod.id = img.prod_id
WHERE prod.id = ID_THAT_YOU_WANT
,하지만 당신은 안 : 그 후, 하나의 제품에 대한 이미지를 얻기 위해, 당신은 단지 같은 쿼리를 할 것입니다. ID를 쿼리에 추가하지 마십시오.
+0
네, 고마워요. :)하지만 블롭을 저장하는 대신에 파일 이름을 저장하는 장단점을 읽지 않았습니다. 그게 뭐죠? – TPSstar
관련 문제
- 1. AFNetworking으로 둘 이상의 이미지 보내기
- 2. 데이터베이스에있는 이미지
- 3. 둘 이상의 단어가 포함 된 엔티티에 대한 Freebase 쿼리
- 4. 하나의 JPG 파일에 둘 이상의 이미지 내보내기
- 5. Twig 경로에 둘 이상의 매개 변수 추가
- 6. Silverlight : 둘 이상의 캔버스에 동일한 UserControl 추가
- 7. jetty에 둘 이상의 리소스 디렉토리 추가
- 8. 둘 이상의 UIPickerView 사용
- 9. 둘 이상의 객체 터널링
- 10. JSP로 둘 이상의 preparestatement
- 11. nl2br 둘 이상의 개행
- 12. PDO INSERT - 둘 이상의
- 13. 둘 이상의 사용자 검색
- 14. BlazeDS에서 둘 이상의 채널
- 15. 둘 이상의 인수가있는 gdb 디버그
- 16. 둘 이상의 관련 레코드에서 조회 필터링
- 17. 엔티티에 새 생성자 추가
- 18. 둘 이상의 열의 데이터에 따라 하나의 이미지 표시
- 19. DataGridView 이미지 열에 둘 이상의 이미지를 표시 하시겠습니까? 가능한가?
- 20. 이미지에 둘 이상의 아이콘이 포함되어있을 때 VS2010 이미지 라이브러리 사용
- 21. 엔티티가 둘 이상의 엔티티와 연결될 수 있습니까?
- 22. drawstring에 둘 이상의 글꼴 사용
- 23. 둘 이상의 테이블에서 LINQ 집계
- 24. 둘 이상의 링크를 리디렉션하는 방법
- 25. Codeigniter는 둘 이상의 컨트롤러를 사용합니까?
- 26. 둘 이상의 데이터베이스를 동적으로 연결하십시오.
- 27. data.table의 둘 이상의 열을 업데이트하십시오.
- 28. OAuth에서 둘 이상의 공급자 사용
- 29. 함수에서 둘 이상의 값 반환
- 30. 어셈블리 언어 - 둘 이상의 형식?
여러 필드의 데이터를 하나의 필드에 넣지 마십시오. 이는 관계형 데이터베이스를 갖는 목적을 무효화합니다. 해당 필드를 자체 테이블로 분할하여 원하는만큼 하위 테이블에 많은 이미지 레코드를 가질 수 있습니다. –
왜 그렇게 했습니까? 여러 개의 이미지를 처리하기 위해 1-N 관계가있는 다른 테이블을 만들 수 있습니까? – loscuropresagio
OK 고맙습니다. 이미지를위한 추가 테이블을 추가 할 것입니다. 그리고 크기도 동일해야합니까? – TPSstar