sql >> Database teknologi >  >> RDS >> Mysql

Skal man generere et unikt id for hver række i en databasetabel, der ellers ikke har nogen unikke nøgler?

Du kan altid tilføje en simpel numerisk primærnøgle (f.eks. mysql auto_increment), så du ender med en unik identifikator for hver række. Sammensatte primærnøgler er en alvorlig smerte, hvis du skal bruge tabellen i et fremmednøgleforhold, hvilket tvinger dig til at angive hver af primærnøglernes komponentfelter i alle joins/FK-specifikationer. Til sammenligning reducerer tilføjelse af en simpel int primærnøgle dig til at bære det ENE felt rundt for FK/join-relationerne.

Jeg vil foreslå noget i retning af:

patients (id, name, ....)
meds (id, brand, name, ...)
patient_meds (patient_id, med_id, dosage, ...)


  1. Fejl:Kan ikke hente en række fra OLE DB-udbyder ADsDSOObject for linket server ADSI

  2. Hvordan sorterer man et associativt array i PL/SQL?

  3. hvordan man ændrer blokstatus for at indsætte i 10g ved hjælp af en knapudløser

  4. Opret PDF-filer med PLSQL i Oracle