Получить последний вставленный идентификатор в MySQL

Чтобы получить последний вставленный идентификатор в MySQL, вы можете использовать следующие методы:

  1. Использование функции LAST_INSERT_ID(). Функцию LAST_INSERT_ID() можно использовать в SQL-запросе сразу после оператора INSERT, чтобы получить последний сгенерированный идентификатор. Например:

    INSERT INTO your_table (column1, column2) VALUES ('value1', 'value2');
    SELECT LAST_INSERT_ID();

    Инструкция SELECT вернет последний вставленный идентификатор.

  2. Использование функции mysql_insert_id() в PHP. Если вы используете PHP для взаимодействия с MySQL, вы можете использовать функцию mysql_insert_id() для получения последнего вставленного идентификатора. Эта функция возвращает идентификатор, сгенерированный последним запросом INSERT. Вот пример:

    $link = mysqli_connect("localhost", "username", "password", "database");
    mysqli_query($link, "INSERT INTO your_table (column1, column2) VALUES ('value1', 'value2')");
    $lastId = mysqli_insert_id($link);

    Переменная $lastIdбудет содержать последний вставленный идентификатор.

  3. Использование метода getGeneratedKeys() в Java. Если вы используете Java и JDBC для взаимодействия с MySQL, вы можете использовать метод getGeneratedKeys() класса AcademicStatement для получения последнего вставленного идентификатора. Вот пример:

    Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/database", "username", "password");
    PreparedStatement stmt = conn.prepareStatement("INSERT INTO your_table (column1, column2) VALUES (?, ?)", Statement.RETURN_GENERATED_KEYS);
    stmt.setString(1, "value1");
    stmt.setString(2, "value2");
    stmt.executeUpdate();
    ResultSet rs = stmt.getGeneratedKeys();
    if (rs.next()) {
       int lastId = rs.getInt(1);
    }

    Переменная lastIdбудет содержать последний вставленный идентификатор.