Mảng MySQL

Mảng là một biến đặc biệt cho phép lưu trữ một hoặc nhiều giá trị trong một biến đơn e. g. – giữ tên người dùng hoặc chi tiết trong Mảng

Chúng dễ thao tác hơn

Đôi khi, yêu cầu lưu trữ Mảng trong cơ sở dữ liệu MySQL và truy xuất nó

Trong hướng dẫn này, tôi chỉ cho bạn cách lưu trữ một Mảng trong cơ sở dữ liệu MySQL và đọc nó bằng PHP

Mảng MySQL


nội dung


1. Cấu trúc bảng

Tạo bảng

0

'arr_serialize1' và 'arr_serialize2' được sử dụng để lưu trữ giá trị được tuần tự hóa

CREATE TABLE `contents_arr` (
  `id` int(11) NOT NULL PRIMARY KEY AUTO_INCREMENT,
  `username` varchar(80) NOT NULL,
  `name` varchar(80) NOT NULL,
  `arr_serialize1` varchar(255) NOT NULL,
  `arr_serialize2` varchar(255) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

2. Cấu hình

Tạo một

1 cho kết nối cơ sở dữ liệu

Mã hoàn thành


3. Với serialize() và unserialize()

Xác định hai mảng –

2 và 
3

Mảng

2 là Mảng kiểu được lập chỉ mục và 
3 là Mảng kết hợp

Nối tiếp cú pháp –

________số 8

Truyền mảng trong phương thức

6 và truyền các giá trị được tuần tự hóa trong truy vấn INSERT

Unserialize Cú pháp –

CREATE TABLE `contents_arr` (
  `id` int(11) NOT NULL PRIMARY KEY AUTO_INCREMENT,
  `username` varchar(80) NOT NULL,
  `name` varchar(80) NOT NULL,
  `arr_serialize1` varchar(255) NOT NULL,
  `arr_serialize2` varchar(255) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
0

Tìm nạp các bản ghi và chuyển giá trị được tuần tự hóa trong phương thức

7 để chuyển đổi nó sang định dạng Mảng

Mã hoàn thành

CREATE TABLE `contents_arr` (
  `id` int(11) NOT NULL PRIMARY KEY AUTO_INCREMENT,
  `username` varchar(80) NOT NULL,
  `name` varchar(80) NOT NULL,
  `arr_serialize1` varchar(255) NOT NULL,
  `arr_serialize2` varchar(255) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2

Đầu ra –

CREATE TABLE `contents_arr` (
  `id` int(11) NOT NULL PRIMARY KEY AUTO_INCREMENT,
  `username` varchar(80) NOT NULL,
  `name` varchar(80) NOT NULL,
  `arr_serialize1` varchar(255) NOT NULL,
  `arr_serialize2` varchar(255) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
3

4. Với implode() và phát nổ()

Sử dụng

8 để tách 
2 bằng dấu phân cách (” , “) và nhận được một chuỗi. Truyền giá trị trong truy vấn INSERT

Tìm nạp bản ghi và sử dụng

serialize([Array]);
0 để chuyển đổi chuỗi được phân tách bằng dấu phẩy ở định dạng Mảng

Trong ví dụ này, tôi đang hiển thị giá trị ở dạng chuỗi và Array

Mã hoàn thành

CREATE TABLE `contents_arr` (
  `id` int(11) NOT NULL PRIMARY KEY AUTO_INCREMENT,
  `username` varchar(80) NOT NULL,
  `name` varchar(80) NOT NULL,
  `arr_serialize1` varchar(255) NOT NULL,
  `arr_serialize2` varchar(255) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
7

Đầu ra –

CREATE TABLE `contents_arr` (
  `id` int(11) NOT NULL PRIMARY KEY AUTO_INCREMENT,
  `username` varchar(80) NOT NULL,
  `name` varchar(80) NOT NULL,
  `arr_serialize1` varchar(255) NOT NULL,
  `arr_serialize2` varchar(255) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
8

5. Có vòng lặp

Vòng lặp trên Mảng

3

Đọc và chuyển giá trị trong truy vấn INSERT. Bản ghi mới được chèn cho đến khi có dữ liệu

Mã hoàn thành

0

Đầu ra –

1

6. Kết luận

Tốt hơn là sử dụng phương thức serialize() để chuyển đổi Array thành định dạng chuỗi và lưu trữ nó trong một cột

Bạn cần sử dụng phương thức unserialize() để chuyển đổi giá trị được tuần tự hóa và lấy lại ở định dạng Mảng

Tôi có thể tạo mảng trong MySQL không?

Bạn nên lưu ý rằng mặc dù mảng là một phần của SQL Chuẩn, nhưng các cơ sở dữ liệu như MySQL không hỗ trợ Mảng .

Làm cách nào để lấy mảng trong MySQL?

Sử dụng hàm tích hợp ARRAY_AGG trong khai báo con trỏ, để gán các hàng của bảng kết quả một cột cho các phần tử của một mảng. Sử dụng con trỏ để truy xuất mảng thành tham số SQL out . Sử dụng hàm tạo mảng để khởi tạo mảng. Gán một hằng số hoặc một biểu thức cho một phần tử mảng.

Làm cách nào để thêm mảng trong MySQL?

Bạn không thể chèn trực tiếp một mảng vào MySQL vì MySQL không hiểu các kiểu dữ liệu PHP. MySQL chỉ hiểu SQL. Vì vậy, để chèn một mảng vào cơ sở dữ liệu MySQL, bạn phải chuyển đổi nó thành câu lệnh SQL .

Làm thế nào để lưu trữ giá trị mảng trong cơ sở dữ liệu?

Cấu trúc bảng. Tạo bảng content_arr. .
Cấu hình. Tạo cấu hình. .
Với serialize() và unserialize() Xác định hai mảng – $names_arr và $users_arr. .
Với implode() và phát nổ() Sử dụng implode() để phân tách $names_arr bằng dấu phân cách (” , “) và nhận một chuỗi. .
với vòng lặp. Lặp lại mảng $users_arr. .
Sự kết luận