2010-05-01 2 views

답변

1

나는 (아마 널리하지만 사용되는)

내가 행의 모든 ​​필드의 해시 코드를 계산 한 다음 나는이 해시를 사용하는 좋은 "재사용 기반-에 해시"기술을 함께했다 -code를 기본 키로 사용하십시오.

내가 삽입했을 때 나는 단순히 "INSERT IGNORE"(중복 된 기본 키에 대한 오류를 억제하기 위해)를했다. 어쨌든 내가 삽입하기를 원하는 것이 삽입 후 데이터베이스에 있는지 확인할 수있었습니다.

이것이 알려진 개념이라면 그것에 대해 듣게되어 기쁩니다!

+0

어떤 해시를 사용하셨습니까? 두 개의 다른 필드가 우연히 같은 해시를 가졌을 때 당신은 무엇을 했습니까? –

+0

인터넷에서 이것에 대해 어떤 것이 있습니까? 나는 더 많은 것을 듣고 싶다. – Zubair

+0

@Mark Byers 물론 이것은 일반적인 경우의 문제입니다. 그러나 가능한 조합의 값 조합이 매우 제한적입니다. (해시 함수의 범위에 따라 번호가 매겨집니다.) @Zubair 사실 실제로는 그렇지 않습니다. . 나는 기술에 대해 뭔가를 찾고 싶습니다. – aioobe

2

필요가 없습니다. 데이터베이스에는 이미 데이터베이스 복제를 피하는 좋은 방법이 있습니다.

예를 들어 5 개의 다른 문자열 중 하나를 포함 할 수있는 열이 있다고 가정 해보십시오. 이러한 문자열 중 하나를 각 행에 저장하는 대신 이러한 문자열을 별도의 테이블로 옮겨야합니다. 하나는 문자열 값을 다른 하나는 기본 키로 두 개의 열이있는 테이블을 만듭니다. 이제 전체 문자열을 저장하는 대신 원본 테이블에서 외래 키를 사용할 수 있습니다.

관련 문제