ALTER [IGNORE] TABLE tbl_name alter_spec [, alter_spec ...]
alter_specification:
ADD [COLUMN] create_definition [FIRST | AFTER column_name ]
or ADD [COLUMN] (create_definition, create_definition,...)
or ADD INDEX [index_name] (index_col_name,...)
or ADD PRIMARY KEY (index_col_name,...)
or ADD UNIQUE [index_name] (index_col_name,...)
or ADD FULLTEXT [index_name] (index_col_name,...)
or ADD [CONSTRAINT symbol] FOREIGN KEY index_name (index_col_name,...) [reference_definition]
or ALTER [COLUMN] col_name {SET DEFAULT literal | DROP DEFAULT}
or CHANGE [COLUMN] old_col_name create_definition [FIRST | AFTER column_name]
or MODIFY [COLUMN] create_definition [FIRST | AFTER column_name]
or DROP [COLUMN] col_name
or DROP PRIMARY KEY
or DROP INDEX index_name
or DISABLE KEYS
or ENABLE KEYS
or RENAME [TO] new_tbl_name
or ORDER BY col
or table_options
% 필드 추가하기
mysql> alter table 테이블 add column 필드명 데이타형;
% 두개의 필드 추가하기
mysql> alter table 테이블 add column wdate,add column wtime time;
wdate date 날짜데이터 형
wtime time 시간데이터 형
% 한라인 입력
mysql>create table test(..............);
% 다중입력
mysql>create table test(
->num
->int,
->name
->varchar(10));
%필드 수정하기
alter table 테이블이름 rename 바꿀이름
% 필드 삭제
alter table 테이블명 drop 칼럼네임
-----------------------------------------------------------
새로운 필드 삽입시 이미 만들어진 필드 의 어느 부분에 넣으려고 합니다.
add lolumn 추가하려는 필드명 [first/after 필드명]이라구 적혀있더라구요..
alter table insa add column address char(20) first name;
이렇게 하니 에러가 나내요..어떻게 써야 하나요....
답변좀 부탁드립니다. 그럼감사..고맙습니다.
[답변]---------------------------------------------->
예로서 설명을 해드리지요...
------------------------------------
| filed | type | key | default |
------------------------------------
| year | int(11) | pri | 0 |
------------------------------------
| name |varchar(8)| pri | 0 |
------------------------------------
뭐 이런식으로 db 디자인이 되어있다면...
여기다가 first/alter 를 이용하여 어느앞..어느뒤에다 넣을 것인지 쳐주면 됩니다...
그러니까...이 테이블 이름이 님의 테이블처럼 insa 경우..
alter table [테이블이름] add [컬럼정의부분] first;
->alter table insa add class int not null first;
이렇게 쳐주시면 class라는 컬럼이 테이블 최상위로 올라간답니다.
또 alter table insa add class int not null after year;
이렇게 쳐주시면 year라는 컬럼뒤에 class라는 컬럼이 추가 되겠지요...^^
제가 투덜이 책을 안봐서 모르겠지만...
설명이 잘 되었으리라 생각이 듭니다...
마지막으로 설마하는 맘으로...
님의 경우에서 한번더 써드리지요...
님이 쓰신글 -> alter table insa add column address char(20) first name;
수정한 글 -> alter table insa add address char(20) first;
[테이블명] [컬럼명][컬럼타입]
이렇게 써주셔야...테이블 최상위로 올라갑니다..^^
만약 name이라는 컬럼 뒤에 넣고 싶다면...
-> alter table insa add address char(20) after name;<div class='small'>[이 게시물은 관리자님에 의해 2011-10-31 17:27:00 MySQL에서 이동 됨]</div>
alter_specification:
ADD [COLUMN] create_definition [FIRST | AFTER column_name ]
or ADD [COLUMN] (create_definition, create_definition,...)
or ADD INDEX [index_name] (index_col_name,...)
or ADD PRIMARY KEY (index_col_name,...)
or ADD UNIQUE [index_name] (index_col_name,...)
or ADD FULLTEXT [index_name] (index_col_name,...)
or ADD [CONSTRAINT symbol] FOREIGN KEY index_name (index_col_name,...) [reference_definition]
or ALTER [COLUMN] col_name {SET DEFAULT literal | DROP DEFAULT}
or CHANGE [COLUMN] old_col_name create_definition [FIRST | AFTER column_name]
or MODIFY [COLUMN] create_definition [FIRST | AFTER column_name]
or DROP [COLUMN] col_name
or DROP PRIMARY KEY
or DROP INDEX index_name
or DISABLE KEYS
or ENABLE KEYS
or RENAME [TO] new_tbl_name
or ORDER BY col
or table_options
% 필드 추가하기
mysql> alter table 테이블 add column 필드명 데이타형;
% 두개의 필드 추가하기
mysql> alter table 테이블 add column wdate,add column wtime time;
wdate date 날짜데이터 형
wtime time 시간데이터 형
% 한라인 입력
mysql>create table test(..............);
% 다중입력
mysql>create table test(
->num
->int,
->name
->varchar(10));
%필드 수정하기
alter table 테이블이름 rename 바꿀이름
% 필드 삭제
alter table 테이블명 drop 칼럼네임
-----------------------------------------------------------
새로운 필드 삽입시 이미 만들어진 필드 의 어느 부분에 넣으려고 합니다.
add lolumn 추가하려는 필드명 [first/after 필드명]이라구 적혀있더라구요..
alter table insa add column address char(20) first name;
이렇게 하니 에러가 나내요..어떻게 써야 하나요....
답변좀 부탁드립니다. 그럼감사..고맙습니다.
[답변]---------------------------------------------->
예로서 설명을 해드리지요...
------------------------------------
| filed | type | key | default |
------------------------------------
| year | int(11) | pri | 0 |
------------------------------------
| name |varchar(8)| pri | 0 |
------------------------------------
뭐 이런식으로 db 디자인이 되어있다면...
여기다가 first/alter 를 이용하여 어느앞..어느뒤에다 넣을 것인지 쳐주면 됩니다...
그러니까...이 테이블 이름이 님의 테이블처럼 insa 경우..
alter table [테이블이름] add [컬럼정의부분] first;
->alter table insa add class int not null first;
이렇게 쳐주시면 class라는 컬럼이 테이블 최상위로 올라간답니다.
또 alter table insa add class int not null after year;
이렇게 쳐주시면 year라는 컬럼뒤에 class라는 컬럼이 추가 되겠지요...^^
제가 투덜이 책을 안봐서 모르겠지만...
설명이 잘 되었으리라 생각이 듭니다...
마지막으로 설마하는 맘으로...
님의 경우에서 한번더 써드리지요...
님이 쓰신글 -> alter table insa add column address char(20) first name;
수정한 글 -> alter table insa add address char(20) first;
[테이블명] [컬럼명][컬럼타입]
이렇게 써주셔야...테이블 최상위로 올라갑니다..^^
만약 name이라는 컬럼 뒤에 넣고 싶다면...
-> alter table insa add address char(20) after name;<div class='small'>[이 게시물은 관리자님에 의해 2011-10-31 17:27:00 MySQL에서 이동 됨]</div>
게시판 목록
팁게시판
디자인과 관련된 유용한 정보를 공유하세요.
질문은 상단의 QA에서 해주시기 바랍니다.
질문은 상단의 QA에서 해주시기 바랍니다.
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|
| 5977 | 9년 전 | 220 | ||
| 5976 | 9년 전 | 252 | ||
| 5975 | 9년 전 | 285 | ||
| 5974 | 9년 전 | 380 | ||
| 5973 | 9년 전 | 424 | ||
| 5972 | 9년 전 | 272 | ||
| 5971 | 9년 전 | 321 | ||
| 5970 | 9년 전 | 290 | ||
| 5969 | 9년 전 | 210 | ||
| 5968 | 9년 전 | 193 | ||
| 5967 | 9년 전 | 368 | ||
| 5966 | 9년 전 | 227 | ||
| 5965 | 9년 전 | 221 | ||
| 5964 | 9년 전 | 216 | ||
| 5963 | 9년 전 | 306 | ||
| 5962 | 9년 전 | 362 | ||
| 5961 | 9년 전 | 270 | ||
| 5960 | 9년 전 | 309 | ||
| 5959 | 9년 전 | 245 | ||
| 5958 |
|
9년 전 | 525 | |
| 5957 | 9년 전 | 354 | ||
| 5956 | 9년 전 | 326 | ||
| 5955 | 9년 전 | 324 | ||
| 5954 | 9년 전 | 251 | ||
| 5953 | 9년 전 | 385 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기