1

alter ステートメントを使用して、特定の列を mysql.am の自動インクリメントで主キーとして設定する方法。しかし、mysqlでalterステートメントを実行するとエラーが発生します。

alter statement
---------------

 ALTER TABLE tbl_travelplan add COLUMN TRREQNO id INT(11) NOT NULL AUTO_INCREMENT, ADD PRIMARY KEY (id);    
4

5 に答える 5

3

最初に主キーを削除する必要があります:これを試してください::

ALTER TABLE tbl_travelplan add TRREQNO_id INT(11) NOT NULL AUTO_INCREMENT, DROP PRIMARY KEY,PRIMARY KEY;    

ALTER TABLE tbl_travelplan add TRREQNO_id INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY;    
于 2012-12-18T10:41:05.727 に答える
3

本当の問題は、クエリ内のTRREQNOとidの間のスペースだと思います。私が下に置いたクエリを試してください:

ALTER TABLE tbl_travelplan add TRREQNO_id INT(11) NOT NULL primary KEY AUTO_INCREMENT;
于 2012-12-18T10:57:07.380 に答える
0

最初に既存のインデックスを削除する必要があります

DROP_INDEX [your_existing_index] ON tbl_travelplan
于 2012-12-18T10:42:42.773 に答える
-1

そのテーブルにはすでに主キーがあると思います。したがって、これらの種類のエラーのみが発生しました。主キーを削除して、クエリを実行してください。

このクエリを実行してください

ALTER TABLE `table_name` add TRREQNO id INT(11) NOT NULL AUTO_INCREMENT DROP PRIMARY KEY ,
ADD PRIMARY KEY ( `id` ) 
于 2012-12-18T10:43:51.917 に答える