2012-02-06 3 views
0

mysql 데이터베이스의 구성원 테이블 및 점수 테이블에 사용할 최상의 데이터 형식은 무엇입니까?구성원 테이블의 데이터 형식은 무엇입니까?

나는 자바로 호스팅 된 mysql 데이터베이스에 연결하는 게임을 만들고있다. 각 필드에 사용할 데이터 유형이 확실하지 않습니다.

필드는 I는 한 :

TABLE tMembers

ID INT(11) 
firstName VARCHAR(255) 
lastName VARCHAR(255) 
email VARCHAR(255) 
username VARCHAR(255) 
password VARCHAR(255) 

TABLE tScores

ID INT(11) 
SCORE INT(11) 
DATE DATETIME 

내가 SO에 대한 몇 가지 소리를 듣고 바로 전자 메일을 VARCHAR(80) 사용의 효율성에 대해 인터넷 검색을 형성했다 이메일 등이 이것보다 길어질 수는 없습니다. 사실입니까?

이름

text보다 varchar 낫다는 ID을 위해 또한

을, (이름이 숫자 또는 기호를 포함 할 수 없습니다로, 왜 그냥? text 사용) 나는 INT 또는 INTEGER를 사용해야합니까?

도움이되는 것 이상입니다.

답변

1

나는 이것이 사실, SO에 몇 가지를 들어 그냥 VARCHAR은 (80) 이메일로 이메일 등을위한 이 초과 할 수 없습니다 사용하는 효율성에 대해 인터넷 검색을 형성했다?

예, 열을 varchar (x)로 정의하면 해당 열에 저장하려는 값의 길이가 x보다 작아야합니다. 이름

는 (이름이 번호 또는 기호를 포함 할 수 없습니다로, 왜 그냥 텍스트를 사용하지?)

VARCHAR 포함 (최대 길이) 텍스트 미만의 자, 따라 텍스트보다 VARCHAR 낫다 당신이 사용하고있는 MySQL 버전. 예 : 5.03+ varchar에는 65535자를 포함 할 수 있습니다. 그러나 귀하의 요구 사항에 대해 "이름"에 대한 varchar 유형은 괜찮습니다.

또한 ID는 INT 또는 INTEGER를 사용해야합니까?

내 이해만큼, INT와 INTEGER는 동일합니다. 이 http://dev.mysql.com/doc/refman/5.0/en/numeric-types.html 는 당신이 볼 수 확인 :

MySQL은 모든 표준 SQL 숫자 데이터 유형을 지원합니다. 이러한 유형 에는 근사 숫자 데이터 유형 (FLOAT, REAL, 및 DOUBLE PRECISION)뿐만 아니라 정확한 숫자 데이터 유형 (INTEGER, SMALLINT, DECIMAL 및 NUMERIC)이 포함됩니다. 키워드 INT는 INTEGER의 동의어이고 키워드 DEC 및 FIXED는 DECIMAL의 동의어입니다.

+0

고맙다. 나는 제대로 된 줄 알았지 만 완전히 확신하지 못했다. – Mike

관련 문제