SQLを使ってレコードを追加する場合、IDなどをAuto Increment設定にしていると、INSERTするまで割り振られるIDが分かりません。割り振られるIDが分かれば、そのIDを使って他のテーブルなどにレコードを作成できるようになって便利ですよね。
今回はPHPを使って、最後にSQLでINSERTしたIDを取得する方法を紹介します。
最後にINSERTしたIDを取得する関数は、mysqli_insert_id関数です。mysql_insert_idという関数もあるのですが、現在は利用が推奨されていないので、iが付いているmysqli_insert_id関数を利用します。
$link = mysqli_connect( $URL , $ID , $PW , $DB_NAME ); |
$query = "INSERT INTO person_table VALUES ('太郎','18')" ; |
mysqli_query( $link , $query ); |
printf ( "New Record ID=%d\n" , mysqli_insert_id( $link )); |
ご紹介した例ではIDをprintfしていますが、変数に代入すればいろいろと活用できると思います。