如何給除了主鍵外的字段設置自增?一個表有主鍵,是自增的,我想給表的另一個字段設置主鍵,設置成自增從10000開始自增,在網上找了好多資料都是設置主鍵的,沒有其他字段的,想問下如何寫?
5 回答

夢里花落0921
TA貢獻1772條經驗 獲得超6個贊
mysql中只能設置一列為自增長,這一列可以是主鍵,也可以不是主鍵,如果不是主鍵,則必須將其設置為一種鍵(key,即索引)。自增的開始值為表屬性,不是字段屬性,所以需要在表屬性中設置,如要設置自增開始值為10000
create table test(
id int not null,
noid int not null auto_increment,
primary key(id), --如果主鍵設置了自增長,那么其他列就不能在設置自增長了
key(noid) -- 如果給其他列設置自增長,那么必須為其創建一個索引,索引類型有很多,自行查資料
)engine=xxx auto_increment=10000;

RISEBY
TA貢獻1856條經驗 獲得超5個贊
在表上加個觸發器:
CREATE TRIGGER tri_test
BEFORE INSERT
ON test --test要操作的表
FOR EACH ROW
declare
v_test varchar(30);
BEGIN
if inserting then
select seq_test.nextval into v_test from dual; --設立了一個序列,自動獲取序列下一個值:
:new.col_test:= v_test;--賦值給自增字段
end if;
END;
添加回答
舉報
0/150
提交
取消