sql >> Database >  >> RDS >> Mysql

verwijzen naar kolommen voor automatisch ophogen?

U moet een INT-kolom maken met de naam "parent_id" in de afhankelijke tabellen die de id opslaat van de hoofdtabel waarnaar deze verwijst. Wanneer u records uit het eerste selecteert, voegt u zich bij de tabellen met het auto_increment-veld van het eerste veld tegen de "parent_id" van het tweede.

Zoals MrSlayer vermeldt, gebruik de nieuw ingevoegde ID van de eerste tabel om "parent_id" bij te werken. Je moet hebben doorgaans een uniek ID-veld in de tweede tabel voor uniciteit, maar het mag geen deel uitmaken van de relatie met de eerste tabel.

Als u niet zeker weet hoe u de id kunt krijgen waarnaar de eerste tabel automatisch wordt verhoogd wanneer u deze invoegt, gebruikt u mysql_insert_id() .

mysql_query("INSERT INTO table1 ...");
echo "Last inserted record_id in table1 was " .  mysql_insert_id();

INSERT INTO table1 (mytextcolumn) VALUES('text');
INSERT INTO table2 (parent_id,image_name) VALUES(LAST_INSERT_ID(),'someimage.png'); 



  1. de waarde krijgen van een extra draaitabelkolom laravel

  2. java.lang.OutOfMemoryError:[geheugen uitgeput] tijdens het lezen van gegevens van Sqlite Android

  3. Laatste afzonderlijke set records ophalen

  4. Moet ik NULL of een lege tekenreeks gebruiken om geen gegevens in de tabelkolom weer te geven?