Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Một cách hiệu quả để lưu Mảng và các Khóa của nó vào cơ sở dữ liệu

Nếu bạn muốn tạo truy vấn SQL từ mảng của mình, điều này có thể hữu ích:

// 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);

Trong trường hợp này, truy vấn sẽ trông giống như sau:

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

Nếu bạn có một mảng nhiều chiều (một mảng nhiều mảng), bạn có thể tạo một truy vấn như sau:

// 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);

Và trong trường hợp này, truy vấn kết quả sẽ giống như sau:

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

Bây giờ bạn chỉ phải lo lắng về việc tạo các cột tương ứng cho cơ sở dữ liệu.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Đã nâng cấp lên Ubuntu 16.04 ngay bây giờ các phụ thuộc MySQL-python bị hỏng

  2. CONCAT cột với Laravel 5 hùng hồn

  3. Tạo một hàm với các đối số tùy chọn trong MySQL

  4. Chuyển đổi MySQL sang XML qua PHP

  5. Không thể khởi động mùa xuân để tự động tạo giản đồ cơ sở dữ liệu