2011-01-26 7 views
3

mysql의 열 이름을 길게,mysql에 열 이름 바꾸기 명령이없는 이유는 무엇입니까?

alter table table_name change old_name new_name column_def으로 바꿔야합니다.

왜 구문,

alter table table_name rename old_name new-name을 수행하지?

+0

참조 무결성은 테이블 이름을 기반으로합니다. DDL 변경은 QA에 시간과 노력이 들며 비용이 많이들 수 있으며 DBA의 역할에 대한 통찰력을 제공해야합니다. –

+0

MySQL ... ISAM ... 무결성? 하하. Mkay :-) 이것은 다른 벤더와 비교하여 MySQL을 구현 한 것일뿐입니다 (이유는 논쟁의 여지가 있지만 매우 흥미롭지는 않습니다). SQL-xx DDL 적합성이 그림. –

+0

없기 때문에. – Pacerier

답변

1

이름을 바꿀 때 속성의 유형도 효과적으로 변경된다고 생각합니다. 따라서 변경이 더 정확합니다.

+2

나는 보통의 mysql 슬플 롭티의 일부라고 말하고 싶다. 생략 된 컬럼 타입 폼 테이블의 메타 데이터를 복구 할 수있다. 하지만 화염 전쟁이 일어나지 않도록 나는 닫아야한다. :) – 9000

+0

@SpyrosP 그럼 mysql이 단순히 이름 바꾸기 기능을 구현할 수없는 이유를 설명하지 않는다. – Pacerier

+0

물론 당연한 설명이 없다. 그것은 단지 관습입니다. 질문에 설명 된대로 이름 바꾸기는 unix cp와 같습니다. 그러나 mysql은 다른 규칙을 따르므로 alter table은 일반적인 구문과 매우 비슷하게 보인다. – Spyros