Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL] INSERT SELECT - duplikacja rekordu z kolumną AutoIncrement
Tomplus
post 31.08.2018, 10:53:32
Post #1





Grupa: Zarejestrowani
Postów: 1 836
Pomógł: 225
Dołączył: 20.03.2005
Skąd: Będzin

Ostrzeżenie: (0%)
-----


Potrzebuję skopiować w prosty sposób rekord w bazie 1:1 z wyjątkiem ID, które musi być siłą rzeczy unikalne.
Więc stworzyłem coś takiego i nie działa.

  1. INSERT INTO `position`
  2. SELECT *
  3. FROM `position`
  4. WHERE id = 31253 AND cartId = 15647
  5. ON DUPLICATE KEY UPDATE id = MAX(id) + 1;


Z LAST_INSERT_ID() także

Oczywiście bez problemu można napisać zapytanie typu:

  1. INSERT INTO TABLE (a,b,c) SELECT a,b,c FROM TABLE WHERE id = ?;


Jednakże co z sytuacją gdy tabela ma dużo kolumn, albo może mieć w przyszłości dodatkową kolumnę która nie można zapomnieć pominąć przy duplikacji rekordu.


Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 25.04.2024 - 11:28