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

chèn mảng php vào mySql

Cột "gia đình" trong MySQL là kiểu dữ liệu nào? Tôi khá chắc rằng bạn không thể chèn thẳng các mảng php như vậy vào MySQL. Nếu có thể, hãy đoán đó là một trong những điều tôi không biết vì tôi thậm chí chưa bao giờ đã thử.

Cách dễ nhất để làm điều này là mã hóa mảng php của bạn thành một chuỗi JSON và giải mã nó trở lại thành một mảng php khi bạn đọc nó.

$family = array();
...
$familyJsonString = json_encode($family);
...
$insertInfo = "INSERT INTO `family_info`.`info` 
            (`name`, `info`, `family`)
            VALUES (
            '$name', '$info', '$familyJsonString');";
...
$queryString = "SELECT * FROM family_info WHERE name = '$someName'";
$query = mysql_query($queryString, $connection);
$familyData = mysql_fetch_assoc($query);
$decodedFamilyArray = json_decode($familyData['family']);

trong đó cột họ phải là kiểu varchar hoặc kiểu văn bản tùy thuộc vào khoảng thời gian mà mảng họ nhận được.

Một cách mạnh mẽ hơn để thực hiện việc này là tạo một bảng riêng để lưu trữ dữ liệu gia đình của bạn và sử dụng câu lệnh MySQL JOIN để nhận các giá trị được liên kết với một mục nhập trong bảng family_info.

đây là một số thông tin về các lần tham gia

Kết hợp hai bảng mà không trả lại hàng không mong muốn

http://dev.mysql.com/doc/refman/5.0 /en/join.html



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Truy vấn nhanh cho SQL

  2. Tại sao truy vấn 'HIỂN THỊ CẢNH BÁO' được đưa ra ở đây? (JPA / Hibernate / MySQL)

  3. Cách gọi một Thủ tục được lưu trữ từ Hibernate có cả tham số IN và OUT

  4. Xử lý một lượng lớn dữ liệu hiệu quả với MySQL và PHP

  5. Lỗi chung:1615 Cần chuẩn bị lại báo cáo đã chuẩn bị trước