MySQL tablodan sonraki ücretsiz kimliği almak için kısa yol nedir?

0 Cevap php

I id sütun içeren bir tablo var. id s artan vardır ama mutlaka ardışık değil. Örneğin 1, 2, 3, 5, 6, 10, 11, 12

Ben sonraki "serbest" id bulmak gerekiyor, yani max (id) + 1 (veya 1 tablo boşsa).

Şu anda böyle PHP bu yapıyorum:

function get_free_id($con) {
    $sql = "SELECT MAX(id) AS last_id FROM Table";
    $last_id_query = mysql_query($sql, $con);
    $last_id_result = mysql_fetch_array($last_id_query);
    $last_id = $last_id_result['last_id'];  
    return ($last_id == NULL) ? 1 : ($last_id + 1);
}

Bu işlev, bu basit bir görev için ve bu çok basit yapılabilir ki "çok uzun" bir his var.

Haklı mıyım? Nasıl?

0 Cevap