::이준석 님께서 쓰시길::
> 하나의 column에 설정되어 있는 primary key를 없애고자 하는데
> auto_increment가 함께 설정되어 있어서 primary key가 없어지지 않고 애러만
> 뜨는데 data는 그대로 두고 단지 primary key와 auto_increment를 없애기 위해서
> 어떻게 해야 하는지 알려주시기 바랍니다.
>
필드의 속성을 변경하는 명령어가 alter라는것은 아시죠...
하지만 필드가 primary key로 설정이되면 alter라는 명령어를 이용해도
primary키 속성이 없어지거나 변경되지 않습니다.
편법(?)이지만 다음과 같이 하세요.
우선 변경하고자 하는 테이블과 똑같은 성질을 가진 테이블을 다른 이름으로 생성
합니다. 이때 primary key에 해당하는 필드를 새로 생성할때는 primary key 및
auto_increment 옵션을 제거합니다.
원래 테이블명 - a
새로 만들 테이블명 - b
insert into b select * from a;
그러면 똑같은 데이터를 가진 새로운 테이블이 생성이 되나 desc 명령을 이용하여
보시면 primary key옵션은 없습니다(새로 테이블을 만들때 안만들었으니까...)
즐거운 하루 되세요.
|