2009-11-18 6 views
0

나는 216 개의 필드를 가진 테이블을 만들고 싶다. 그러나 나는 그것을 만들려고 할 때 mysql에서 에러가 발생한다.mysql에 테이블을 생성 할 수 없다

 
#1118 - Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. You have to change some columns to TEXT or BLOBs 

나는 그 해결책이 무엇인지 알지 못합니다. 나를 도와주세요.

+0

더 작은 유형으로 열을 변경할 수 있습니까? – Greg

+0

아니요 더 작은 유형으로 열을 변경할 수 없습니다. 내가해야 할 일은 무엇입니까? 다른 옵션은 무엇입니까? – Jimit

+0

그럴 경우 – Greg

답변

6

문제는 mysql이 말하고있는 것입니다 : 한 테이블에 너무 많은 데이터가 있습니다. 필드의 수뿐만 아니라, 당신이 도움을 부르짖 된 테이블을 디자인했다 .. 크기도

그러나 은 데이터베이스 설계에 실제 문제를 그들쪽으로 계산되지만, '나를 분할 , 나를 쪼개 라! '

당신은 당신의 디자인을 normalize한다 ..

1

행 크기가 너무 큽니다. 그것은 바로 그 뜻입니다. 정말로 그 모든 216 개의 들판이 필요합니까? 그걸자를 수 있니?

정말로 216 개의 필드가 필요한 경우, 1 : 1 매핑을 사용하여 2-3 개의 테이블로 나누어보십시오.

0

필드 크기를 최소화하거나 대신 텍스트/얼룩을 만드십시오.

실행하려는 create table 명령을 표시하십시오.

1

오류 메시지는 분명합니다. 모든 216 개의 필드의 크기를 더하면 최대 값을 초과해야합니다. @Peter는 디자인을 다시 생각해야한다고 말했습니다. 나는 테이블에 몇 십여개 이상의 필드가 있어야합니다!

관련 문제