2010-08-04 28 views
11

ALTER TABLE tada_prod. action_6_weekly ADD COLUMN id INT NULL AUTO_INCREMENT UNIQUE SAU member_id;thay đổi bảng thêm ... trước `mã`?

công trình,

vì vậy tôi nghĩ rằng, để thêm cột như cột đầu tiên tôi có thể làm

ALTER TABLE `tada_prod`.`action_6_weekly`  ADD COLUMN `id` INT NULL AUTO_INCREMENT UNIQUE BEFORE `code`; 

nhưng tôi nhận được một lỗi cú pháp, cú pháp chính xác là bao nhiêu?

Trả lời

19
ALTER TABLE `tada_prod`.`action_6_weekly` 
ADD COLUMN `id` INT NULL AUTO_INCREMENT UNIQUE FIRST; 
6

Bạn chỉ có thể thêm cột sau trường cụ thể hoặc trước tiên không phải cột. Các truy vấn mysql cho add cột sau đó nộp là:
ALTER TABLE table_name ADD COLUMN column_name VARCHAR(30) AFTER column_name

1

Trên thực tế,

alter table table_name ADD column_name VARCHAR(12) NOT NULL BEFORE specific_column_name; 

lệnh này không được phép trong cú pháp mySQL. Nếu bạn sử dụng nó, tôi nghĩ bạn sẽ có được

"ERROR 1064: Bạn có một lỗi trong cú pháp SQL của bạn; kiểm tra hướng dẫn tương ứng với phiên bản máy chủ MySQL của bạn cho đúng cú pháp sử dụng gần 'trước specific_column_name' tại dòng 1 "tin nhắn.

Bạn có thể thử:

ALTER TABLE table_name ADD column_name VARCHAR(12) NOT NULL FIRST; 
Các vấn đề liên quan