Alter a table column with auto increment by 1 in derby

北战南征 提交于 2019-12-01 00:24:16

问题


I have created a table in derby Netbeans and now i realize that i need to make a column as auto incremented by 1 which is a primary key. How can i do so? I tried the following code but was in vain.

ALTER TABLE ISSUERECIPT ALTER IRCODE SET INCREMENT BY 1;

Do i need to create the table once again or can it be possible some other way?


回答1:


I have found an alternate solution, i dropped the column from the database (thanks vels4j) added the column once again from the netbeans derby UI as shown below:




回答2:


To alter the column to be auto-generated, the code is

ALTER TABLE ISSUERECIPT ALTER IRCODE SET INCREMENT BY 1;

BUT the column must already be defined with the IDENTITY attribute (as written in this documentation).

In most cases (assuming that you too), the primary key column is not set as IDENTITY. Therefore, you may intend to alter the column to IDENTITY, but that is impossible.

The only way is to drop the table and create it again, as written here.




回答3:


ALTER TABLE tbl ADD id INT PRIMARY KEY AUTO_INCREMENT;




回答4:


ALTER TABLE ISSUERECIPT  ADD IRCODE INTEGER NOT NULL primary key GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1),

I guess could do the things for you




回答5:


Check this

ALTER TABLE ISSUERECIPT 
ALTER IRCODE INTEGER NOT NULL 
GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1);

If your table is empty, Try this

ALTER TABLE DROP  PRIMARY KEY your_primaryKeyContrainName ; 
ALTER TABLE ISSUERECIPT DROP COLUMN IRCODE ;
ALTER TABLE ISSUERECIPT ADD COLUMN 
IRCODE PRIMARY KEY INTEGER NOT NULL 
GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1);

See Also : Derby ALTER TABLE Syntax




回答6:


Try this :

alter table ISSUERECIPT modify column IRCODE int(4) auto_increment



回答7:


Recreate the table again see example below:

CREATE TABLE students
(
id INTEGER NOT NULL GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1),
name VARCHAR(24) NOT NULL,
address VARCHAR(1024),
CONSTRAINT primary_key PRIMARY KEY (id)
) ;


来源:https://stackoverflow.com/questions/14316187/alter-a-table-column-with-auto-increment-by-1-in-derby

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!