私がしたいのは、レコードをテーブルに挿入し、同じクエリの select ステートメントで主キーを返すことです。主キーは自動インクリメントで、この値を取得して別の関数に送信したいと考えています。
2 に答える
1
これらの両方を 1 つのクエリで実行することはできません。代わりにできることはLAST_INSERT_ID()
、2 番目のクエリで使用することです。
INSERT INTO tableA(rowA, rowB) VALUES('a', 'b');
SELECT * FROM tableB WHERE rowID = LAST_INSERT_ID();
于 2013-03-13T14:50:52.363 に答える
0
次のように、新しいデータ行の場合に Id 値を挿入して返す関数を作成できます。
CREATE FUNCTION INSERTANDRETURN(Data to enter as parameters)
RETURNS INT
DETERMINISTIC
BEGIN
DECLARE id INT;
-- Insert data
SET id = last id according to Maxvalue or last inserted data
RETURN id;
END
プロシージャと関数の詳細については、ドキュメントを参照してください
于 2013-03-13T14:50:17.110 に答える