はい。 1つのテーブルに複数の自動インクリメントフィールドを含めることはできません。
CREATE TABLE foo (
id1 int(11) NOT NULL auto_increment,
id2 int(11) NOT NULL default '0',
PRIMARY KEY (id1, id2)
);
INSERT INTO foo VALUES (DEFAULT, 2);
SELECT LAST_INSERT_ID(); -- returns 1, the value generated for id1
LAST_INSERT_ID()
AUTO_INCREMENT
と宣言された列の値のみを返します 。 されなかった複合主キーの値を返す関数はありません。 システムによって生成されます。 INSERT
で値を指定しただけなので、その値はすでに知っているはずです。 声明。トリッキーなケースは、トリガーなどが値をオーバーライドする場合です。