오늘 나는 A-My poor planning과 B- 데이터베이스 정규화 관행에 대한 전적인 무시에 대해 질문했습니다. this question. 지난 8 시간 동안 정규화 된 데이터베이스와 JOIN의 미세한 포인트에 대해 읽은 후 SQLZoo.com 튜토리얼을 진행했습니다.방금 삽입 한 파일의 기본 키 ID를 얻으려면 어떻게해야합니까?
나는 깨달음을 얻는다. 나는 데이터베이스 정규화의 목적과 그것이 어떻게 적합한 지 이해한다. 다만 절차 적 관점에서 그 비전을 실행하는 방법을 완전히 모르겠다는 점을 제외하고는.
나의 오래된 비전은 다음과 같습니다. "파일"이라고 불리는 1 개의 테이블, 파일 아이디와 파일 url 및 해당 파일의 등급 수준 승인.
새로운 비전 !: "파일"을위한 1 개의 테이블, "성적"을위한 1 개의 테이블, 조정할 접합 테이블.
하지만 내 문제는 아닙니다. 이것은 확실한 대답을 가지고있는 정말 기본적인 Q입니다. "파일"에 레코드를 만들면 증가 된 기본 키가 자동으로 할당됩니다 (file_id). 그러나 지금부터는 file_id를 다른 테이블에도 쓸 필요가 있습니다. ID를 수동으로 할당하지 않기 때문에 ID가 무엇인지 어떻게 알 수 있습니까?
text.doc를 업로드하고 file_id 123이되면 "성적"과 접합 테이블에 쓰기 위해 123이 있다는 것을 어떻게 알 수 있습니까? 동시 사용자가있는 경우 다른 ID를 저장할 수 있기 때문에 max (file_id)를 수행 할 수 없습니다. 난 그냥 수동으로 할당하지 않고 file_id 값을 얻는 방법을 모르겠다.
실제 파일 테이블에는 해당 파일에 대한 많은 데이터가 있습니다. 업로드 한 사용자, 해당 파일의 고유 한 S3 URL 등 비전은 다른 사용자가 파일 검색 기준. 파일의 ID를 표시 스크립트로 POST하고 거기에서 찢을 수 있습니다. – GilloD