JHx
Gebruiker
- Lid geworden
- 11 jan 2006
- Berichten
- 407
Hallo (My)SQL-experts,
vanuit een php-pagina voeg ik een record toe aan een tabel
Behalve de velden 'naam' en 'waarde' bevat de record ook nog het veld 'ID'. Dat veld is een integer met de eigenschap 'auto_increment' en is tevens de primaire sleutel.
Hoe kan ik nu de waarde van 'ID' bepalen voor de laatst toegevoegde record?
Aangezien 'naam' en 'plaats' dubbele waarden mag (en ook zal) bevatten, kan ik niet gebruik maken van
Aangezien er erg veel records gaan toegevoeg en terug verwijderd worden, zal op een gegeven moment ook de maximum-waarde voor een integer bereikt worden (ik meen 4294967295). Nieuwe waarden voor 'ID' zullen dan terug beginnen bij de kleinste vrije waarde. Daardoor kan ik dus ook niet gebruik maken van
Iemand enig idee hoe ik dat dan wel kan laten werken?
vanuit een php-pagina voeg ik een record toe aan een tabel
PHP:
$sNaam=$_POST[txtNaam];
$iWaarde=$_POST[txtWaarde];
$dbhost="localhost";
$dbuser="username";
$dbpass="password";
$db="dbname";
$mysql_id=mysql_connect("$dbhost","$dbuser","$dbpass");
$sql="INSERT into tblNamen (naam,waarde) VALUES ('$sNaam',$iWaarde)";
$res=mysql_db_query("$db","$sql",$mysql_id);
Hoe kan ik nu de waarde van 'ID' bepalen voor de laatst toegevoegde record?
Aangezien 'naam' en 'plaats' dubbele waarden mag (en ook zal) bevatten, kan ik niet gebruik maken van
PHP:
$sql="SELECT * FROM tblNamen WHERE naam='$sNaam' AND plaats='$sPlaats';";
Aangezien er erg veel records gaan toegevoeg en terug verwijderd worden, zal op een gegeven moment ook de maximum-waarde voor een integer bereikt worden (ik meen 4294967295). Nieuwe waarden voor 'ID' zullen dan terug beginnen bij de kleinste vrije waarde. Daardoor kan ik dus ook niet gebruik maken van
PHP:
$sql="SELECT MAX(ID) FROM tblNamen;";
Iemand enig idee hoe ik dat dan wel kan laten werken?