[MYSQL] recordnummer aanmaken

Pagina: 1
Acties:

  • tazmaniac20
  • Registratie: December 2001
  • Laatst online: 26-11-2025
Momenteel ben bezig met een mysql database bestaande uit 22 tabellen. Deze hebben alleen composite prim. key(2 of 3 velden). Nu wil ik per iedere row die in een willekeurige tabel in wordt gevoegd een uniek record nummer wordt aangemaakt. Het moet wel zo zijn dat per iedere nieuwe row, onafhankelijk van het tabel, een opvolgend recordnummer wordt in de database.

Om dit te realiseren moet ik per tabel een Record_ID aanmaken, maar ik weet niet hoe deze automatisch laat aanvullen, zodat over de hele database het record-id uniek en opvolgend blijft op de volgorde van invoer.

Dit wil ik doen omdat mijn updatetool in php, slecht één primaire sleutel ondersteund en geen composities hiervan. Anders is het niet mogelijk om te updaten met slechts één veld van de prim. sleutel.

[ Voor 5% gewijzigd door tazmaniac20 op 22-05-2003 14:09 ]


Verwijderd

$query = "INSERT INTO KLANT (klantID, naam, adres, postcode, woonplaats, telefoonno, faxno, email, geboortdatum, mobielno, gebruikersNaam, wachtwoord) VALUES ('', '".$naam."', '".$adres."', '".$postcode."', '".$woonplaats."', '".$telefoonno."', '".$faxnummerField."', '".$email."','".$geboortdatum."', '".$mobielnummerField."', '".$gebruikersNaam."', '".$wachtwoord."')";
$result = $db->Execute($query);
if (!result) die ($vk_taal_data['database_fout']['title']);
$klantID = $db->Insert_ID();
$loginID = $klantID;
$type = "klant";

kijk hier eens naar..

KlantID is het record nr (bytheway deze ID is alleen uniek binnen deze tabel, anders moet je ff stoeien met de code)

[ Voor 60% gewijzigd door Verwijderd op 22-05-2003 14:08 ]


  • tazmaniac20
  • Registratie: December 2001
  • Laatst online: 26-11-2025
Hmm ja, maar ik wil dus over de hele Database, voor iedere row die aangemaakt wordt een opvolgende recordnummer hebben

voorbeeld:

record 1: tabel Klant, velden ......
record 2: tabel Artikel, velden .....
record 3: tabel eigenaar, velden .....
record 4: tabel klant, velden ....
record 5: tabel klant, velden .....

en record_id moet geen primaire sleutel worden....

[ Voor 8% gewijzigd door tazmaniac20 op 22-05-2003 14:13 ]


  • RM-rf
  • Registratie: September 2000
  • Laatst online: 12:03

RM-rf

1 2 3 4 5 7 6 8 9

je kun gewoon elke tabel een tweecijferig nummer geven, tabel_blah is 00 en tabel_foo is 21
dan kun je gewoon gebruik maken van auto increment-waardes, waarbij je het tweecijferige tabel-getal achteraan het cijfer geplakt word (als string).

5678900 is dus altijd je eerste database en record nummer 56789, en 5678921 je laatste tabel en recordnr 56789.
(dit werkt natuurlijk enkel tot 100 tabellen)

Intelligente mensen zoeken in tijden van crisis naar oplossingen, Idioten zoeken dan schuldigen


Verwijderd

dat is natuurlijk ook een optie ja :)

  • tazmaniac20
  • Registratie: December 2001
  • Laatst online: 26-11-2025
RM-rf hoe doe je dit dan?

Ik heb nu per tabel een tabelnaam_RECORD aangemaakt en index, auto-increment.. met default waarde 100000, en de volgende tabel 110000 enz.
Pagina: 1