sql >> Databasteknik >  >> RDS >> Mysql

gå igenom flerdimensionell array i php och gör mysql insert (stock data)

Du kan använda en foreach loop och hänvisa sedan till det aktuella elementet i loopen. Det skulle vara bäst att använda ett förberett uttalande. Här är PDO-versionen:

$stmt = $link->prepare("INSERT INTO table (complete, volume, high, low, close) 
                        VALUES (:complete, :volume, :high, :low, :close)";
$stmt->bindParam(':complete', $complete);
$stmt->bindParam(':volumn', $volume);
$stmt->bindParam(':high', $high);
$stmt->bindParam(':low', $low);
$stmt->bindParam(':close', $close);

foreach ($get_instrument_candles['candles'] as $candle) {
    $complete = $candle['complete'];
    $volume = $candle['volume'];
    $high = $candle['mid']['h'];
    $low = $candle['mid']['l'];
    $close = $candle['mid']['c'];
    $stmt->execute();
}

Mysqli-versionen skulle se ut så här:

$complete = $volume = $high = $low = $close = null;
$stmt = $link->prepare("INSERT INTO table (complete, volume, high, low, close) 
                        VALUES (?, ?, ?, ?, ?)";
$stmt->bind_param("iiiii", $complete, $volume, $high, $low, $close);

foreach loop är samma som för PDO.



  1. Välj COUNT(*) med DISTINCT

  2. Doktrin - underfråga i från

  3. InnoDB prestandajusteringar

  4. varför fungerar inte denna mysql-fråga?