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

Wydajny sposób na zapisanie tablicy i jej kluczy w bazie danych

Jeśli chcesz utworzyć zapytanie SQL ze swojej tablicy, może to pomóc:

// Sample array
$array = array(
             'key1' => 'value1',
             'key2' => 'value2'
             ...
             'key10' => 'value10'
         );

// Get and escape the keys
$keys = array_map('mysql_real_escape_string', array_keys($array));
// Escape the values
$array = array_map('mysql_real_escape_string', $array);
// Build query
$query = "INSERT INTO table(`".implode('`, `', $keys)."`) VALUES('".implode("', '", $array)."')";

mysql_query($query);

W takim przypadku zapytanie wyglądałoby mniej więcej tak:

INSERT INTO
    table(`key1`, `key2` ... `key10`)
VALUES
    ('value1', 'value2' ... 'value10')

Jeśli masz tablicę wielowymiarową (tablicę tablic), możesz utworzyć zapytanie w następujący sposób:

// Sample multidimensional array
$array = array(
             array('key1' => 'value1', 'key2' => 'value2'),
             array('key1' => 'value3', 'key2' => 'value4'),
             array('key1' => 'value5', 'key2' => 'value6')
         );

// Get and escape the keys
$keys = array_map('mysql_real_escape_string', array_keys(current($array)));
// Array to store values for the query
$values = array();
// Loop every row and insert into $values array
foreach($array as $row) {
    // Escape all items
    array_map('mysql_real_escape_string', $row);
    $values[] = "('".implode("', '", $row)."')";
}

$query = "INSERT INTO table(`".implode('`, `', $keys)."`) VALUES ".implode(', ', $values);

mysql_query($query);

W tym przypadku wynikowe zapytanie wyglądałoby mniej więcej tak:

INSERT INTO
    table(`key1`, `key2`)
VALUES
    ('value1', 'value2'),
    ('value3', 'value4'),
    ('value5', 'value6')

Teraz jedyne, o co musisz się martwić, to utworzenie odpowiednich kolumn do bazy danych.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. C# — Pobieranie danych z MySQL i porządkowanie ich na stronach bez DataGridView

  2. Permutacja MySQL

  3. Jak podłączyć PHP do MySQL

  4. PHP MySQL PDO:jak zachować wiodące zera w kolumnach typu zerofill int

  5. Podane hasło do konta użytkownika „root” jest nieprawidłowe lub nie udało się połączyć z serwerem bazy danych