2013-09-22 4 views
1

내가 쿼리내 자동 증가가 작동하지 않습니다와 나는 10 자리의 길이가

ALTER TABLE AUTO_INCREMENT = 2013000000; 

이하로 사용하고 난

#1064 오류

을 가지고 있습니다 - 당신은 당신의 SQL 구문에 오류가있다; 올바른 구문을 찾으려면 MySQL 서버 버전에 해당하는 매뉴얼을 확인하십시오.

내 학교의 학생 ID와 같은 auto_increment에 10 자리가 필요합니다. 누구든지 나를 도울 수 있습니까? ...이

CREATE TABLE user(
    student_id int NOT NULL AUTO_INCREMENT 
    , username varchar(15) NOT NULL 
    , password varchar(15) NOT NULL 
    , lastname varchar(15) NOT NULL 
    , firstname varchar(15) NOT NULL 
    , middlename varchar(15) 
    , birthdate Date NOT NULL 
    , gender varchar(6) NOT NULL 
    , address varchar(30) NOT NULL 
    , email varchar(50) NOT NULL 
    , contact bigint(11) NOT NULL 
    , marital_status varchar(15) NOT NULL 
    , religion varchar(15) NOT NULL 
    ,PRIMARY KEY (student_id) 
); 

다음 나는이

ALTER TABLE AUTO_INCREMENT = 2013000000; 

를 사용하고도 오류가 발생했습니다 내 사용자 테이블입니다.

내가 원하는 모든 2013000000,2013000001,2013000002,2013000003,....

당신은 테이블 이름을 누락
+3

아니요'alter table TableName AUTO_INCREMENT = 2013000000; ' – dcaswell

+0

무엇입니까? 당신이 조금 초보자이고 검색하는 이유를 더 설명 할 수 있습니까? – JeraldPunx

+0

@JeraldPunx 키워드'TABLE' 다음에 테이블의 이름이 필요합니다. 그렇지 않으면 mysql은 변경할 테이블을 알지 못합니다 –

답변

4

에 : 또한

ALTER TABLE user AUTO_INCREMENT = 2013000000; 
      ^^^^ 

Using AUTO_INCREMENT

하는 surrogate key을 사용하는 것이 좋습니다. 학생의 ID가 변경되고 기존 데이터가있는 경우와 같이 트랙을 쉽게 활용할 수 있습니다.

대리 키는 응용 프로그램 데이터에서 파생되지 않습니다.

관련 문제