次の構造のテーブルがあります。
id | number | text
----------------------
1 | 1 | test
ここで、idは自動インクリメント値を持つ私の主キーです。数値も自動インクリメント値にしたいです。1つのテーブルに複数の自動インクリメント列を含めることは可能ですか?
次の構造のテーブルがあります。
id | number | text
----------------------
1 | 1 | test
ここで、idは自動インクリメント値を持つ私の主キーです。数値も自動インクリメント値にしたいです。1つのテーブルに複数の自動インクリメント列を含めることは可能ですか?
それは不可能です。自動インクリメント列は1つしか存在できず、MySQLでキーとして定義する必要があります。しかし、あなたはtrigger
詳細のためにこのリンク を使用することによってそれを行うことができますCREATE TRIGGER
create trigger nameTrigger before insert on tables
for each row
begin
DECLARE newNumber unsigned default 0;
SELECT Max(number)+1 INTO newNumber FROM myTable WHERE id = new.id;
UPDATE myTable SET number = newNumber WHERE id = new.id;
end