Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Naliczanie autoincrement od danej wartości
Forum PHP.pl > Forum > Bazy danych > MySQL
lukaszm89
Witam, problem tego typu że mam 2 tabele i chce je połączyć, ale występują te same ID, więc potrzebuję w tabeli2 zmienić auto increment od wartości 316882. Wiem jak ustawić, aby od następnej wartości naliczało takie ID, ale potrzebuje to zrobić dla rekordów już istniejących. Przykładowo są ID 1,2,3,4,5,6...a chcę to zmienić na 316882, 316883, itd....żebym mógł wtedy te 2 tabele połączyć. Jest taka możliwość?
Crozin
  1. UPDATE tbl_name SET id = id + 300000;
Tyle powinno wystarczyć. Pozostaje jednak problem kluczy obcych. Tutaj są dwie możliwości:
1. Ręczna aktualizacja na podobnej zasadzie co w przypadku tabeli głównej.
2. Jeżeli przy definicji klucza obecnego podałeś ON UPDATE CASCADE aktualizacja nastąpi automatycznie.
lukaszm89
Dzięki wielkie! Wszystko działa smile.gif
skowron-line
A czy nie lepiej użyć składni insert select która przeniesie Ci rekordy z jednej tabeli do drugiej i nada im nowe ID zgodnie z auto_increment.
  1. INSERT INTO mytable2 (id, name, `key`)
  2. SELECT id, name, `key` FROM mytable b
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.