Mysql
 sql >> Baza danych >  >> RDS >> Mysql

odwoływać się do kolumn z automatycznym przyrostem?

Musisz utworzyć kolumnę INT o nazwie „parent_id” w tabelach zależnych, która przechowuje identyfikator głównej tabeli, do której się odwołuje. Kiedy wybierzesz rekordy z pierwszego, połączysz tabele z polem auto_increment pierwszego pola z „parent_id” drugiego.

Jak wspomina MrSlayer, użyj nowo wstawionego identyfikatora pierwszej tabeli, aby zaktualizować „parent_id”. powinieneś zazwyczaj mają unikalne pole identyfikatora w drugiej tabeli dla unikalności, ale nie powinno być częścią relacji z pierwszą tabelą.

Jeśli nie masz pewności, jak uzyskać identyfikator, do którego następuje auto_inkrementacja pierwszej tabeli podczas wstawiania, użyj 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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Lista wartości Enum w rozwijanym php mysql

  2. usługa mysql nie uruchamia się/zawiesza się - limit czasu (Ubuntu, MariaDB)

  3. mySQL SELECT nadchodzące urodziny

  4. Utwórz nową bazę danych za pomocą MySQL Workbench

  5. Podzapytanie MySQL - MySQL 3.23