형 질문있어. 페이징 기반 ItemReader 에서는 예제와 같이 ORDER BY 를 추가해야 한다. ORDER BY 가 없으면 매 페이지를 읽을 때마다 데이터의 순서가 보장되지 않아 일부 데이터가 누락되거나 중복될 수 있다. 라고 했잖아. 이 말은 곧 " JpaCursorItemReader 는 ORDER BY를 추가하지 않아도 괜찮다"로 들리는데 맞아? GPT는 아니라고 하거든. cursor 기반도 마찬가지로 ORDER BY가 없으면 재실행마다 DB에 정렬 순서를 위임하는데, DB는 쿼리 플랜이 변경되는 등 여러 원인들에 의해 실행마다 달라질 수 있대. 뭐가 맞아?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 08:40 쯤에 public void changeTeam(Team team) { this.team = team; team.getMembers().add(this); } 이 부분에서, 내 팀을 변경해주고 변경할 팀에 해당 member를 넣어주는데 팀만 변경해 주면 되지 않나요? 따로 해당 team의 .getMember에 해당 멤버를 넣어주는 이유가 무엇인지 궁금합니다. 저장하기 전 까지는 해당 영속성에서는 이전 team에 할당이 되어 있어 수동으로 바꿔주는 것 인가요?
안녕하세요, 유저 테이블과 구독 테이블 설계 중 해결하기 까다로운 지점이 생겨 질문드립니다. *현재 상황을 보다 이해하시는데 문제가 없으시기 위해 ai로 질문을 정리한점 먼저 말씀드립니다. 1. 현재 상황 및 서비스 정책 유저 테이블: id(PK) , email(UK) / 탈퇴 시 소프트 삭제, 개인정보 보호를 위해 이메일 마스킹 필수. 구독 테이블: 현재 활성화된 구독 정보 딱 1건만 관리 (이력은 별도 테이블 존재). 서비스 정책: 탈퇴 후 동일 이메일로 재가입 시, 기존 로우 복구가 아니라 새로운 로우로 Insert 됩니다. 단, 재가입 시 과거 구독 정보는 그대로 이어받아야 합니다. 2. 제가 고민해 본 방법들과 예상되는 문제점 생각한 방법 1) 구독 테이블이 유저 PK( id )를 외래키로 바라보게 한다. 예상 문제: 재가입 시 유저 테이블에 새 로우가 Insert 되면서 새로운 PK를 발급받기 때문에, 과거 PK를 바라보고 있던 구독 테이블과 연결 고리가 끊어집니다. 생각한 방법 2) 유저 테이블에 '이메일 해시(유니크X)'를 두고, 구독 테이블과 해시값으로 매핑한다. 예상 문제: 해시는 개인정보가 아니므로 탈퇴 후에도 유저 테이블에 남겨둘 수 있어 재가입 매칭은 가능합니다. 하지만 유저가 중간에 이메일을 변경하는 경우 , 유저 테이블의 이메일 해시뿐만 아니라 구독 테이블 및 구독 이력 테이블의 해시값까지 전부 동시 UPDATE 쳐야 하는 번거로움이 생깁니다. 3. 질문 요약 개인정보 보호를 위해 유저 테이블의 이메일 원본은 마스킹하면서도, 재가입 시 동일인임을 식별해 과거 구독 정보를 매칭해 주어야 합니다. 여기에 유저의 이메일 변경 가능성까지 고려해야 하는 상황입니다. 이 경우 구독 테이블의 매핑 키 체계를 어떻게 잡는 것이 가장 깔끔하고 현명한 DB 설계 원칙 일까요? 실무에서 이런 케이스를 해결하는 정석적인 아키텍처 가이드가 궁금합니다!
자연키vs대리키 강의를 보면 대리키를 사용하는게 안정성,유연성에 있어 많은 장점이 있어 대부분 대리키를 사용한다고 하셨는대, 다음과 같은 케이스에도 대리키를 쓰는게 좋을지 궁금합니다. (뒤에 강의에 나올수도 있지만 현시점 궁금해서 질문드립니다.) 1. 조인테이블의 경우 a,b테이블의 pk인 대리키를 이용해 복합키를 만들어서 pk로 쓰면 될지, 아니면 그것 역시 따로 대리키를 만들어야 할지 궁금합니다. 2. 정말 단순한 enum 형태의 테이블일 경우, 예를 들어 유저상태값을 표현하기위해 정상,휴면,탈퇴 등을 기록하는 테이블의 경우 자연키, 대리키 어떤거를 써야할지 궁금합니다. 제가 경험한 바로는 enum 형태의 간단한 테이블조차 대리키를 사용하니 유저 테이블을 조회할때 간단한 상태값조차 조인을 해서 봐야하니 불편하더라고요. 감사합니다.
제공되는 react_ code.zip 중에 .. D:\su\code\SECTION11\11-02 D:\su\code\SECTION11\11-03 안에 소스가 없네요. 당연히 제가 작성하면 되겠지만... 참조하는 차원에서.. ㅡㅡ;; 소스를 얻을 수 있을까요? 다른 폴더안에는 소스가 제공되고 있는데 말이줘 ..