sql >> Databáze >  >> RDS >> Mysql

Vložte více řádků se stejným jedinečným ID

Pokud jsem správně pochopil vaši otázku, chcete zadat ID pro konkrétní skupinu INSERT prohlášení.

Za předpokladu, že máte toto schéma

CREATE TABLE TableName
(
    RecordID INT AUTO_INCREMENT PRIMARY KEY,
    OtherColumn VARCHAR(25) NOT NULL,
    GroupID INT NOT NULL
)

K tomu můžete mít dva příkazy:

1.) Získání posledního GroupID a zvýšit jej o 1 .

SELECT COALESCE(MAX(GroupID), 0) + 1 AS newGroupID FROM TableName

2.) jakmile to provedete, uložte hodnotu do proměnné. Tuto proměnnou použijte pro všechny příkazy insert,

$groupID = row['newGroupID'];
$insert1 = "INSERT INTO TableName(OtherColumn, GroupID) VALUES ('a', $groupID)";
$insert2 = "INSERT INTO TableName(OtherColumn, GroupID) VALUES ('b', $groupID)";
$insert3 = "INSERT INTO TableName(OtherColumn, GroupID) VALUES ('c', $groupID)";

AKTUALIZACE 1




  1. MySQL nastavuje aktuální datum v poli DATETIME na vložení

  2. Spravovaný ovladač ODP.NET se nezobrazuje v dialogovém okně Zdroj dat

  3. utl_file.fopen Parametry v Oracle

  4. PHP PDO bindParam pro proměnnou/řetězec použitý pro příkaz IN...?