Ánh xạ quan hệ đối tượng (ORM) kết nối các ứng dụng được viết bằng ngôn ngữ lập trình hướng đối tượng (OOP) với cơ sở dữ liệu cơ sở. Các loại ứng dụng và cơ sở dữ liệu này thường được sử dụng cùng nhau, nhưng mỗi loại xử lý dữ liệu theo những cách khác nhau. Thêm một ánh xạ quan hệ đối tượng giữa chúng cho phép mỗi bên gửi dữ liệu theo định dạng mà bên kia có thể hiểu. Bạn có thể sửa đổi một bên mà không làm ảnh hưởng đến bên còn lại.
Ngôn ngữ lập trình hướng đối tượng
Ngôn ngữ OOP sắp xếp dữ liệu thành các đối tượng, là cấu trúc mã với một hoặc nhiều thuộc tính. Ví dụ: trong một ứng dụng OOP, bạn có thể xác định một đối tượng được biểu diễn dưới dạng lớp dữ liệu liên tục, chẳng hạn như xe hơi, với các thuộc tính như nhãn hiệu, kiểu dáng, VIN, màu sắc và số dặm.
Một số ngôn ngữ lập trình hướng đối tượng (OOP) phổ biến nhất bao gồm Python, Java, JavaScript và .NET/C #.
Cơ sở dữ liệu quan hệ
Cơ sở dữ liệu quan hệ cấu trúc dữ liệu thành các bảng, giống như một loạt các bảng tính được kết nối. Mỗi bảng bao gồm một tập hợp các cột với các bản ghi duy nhất trong mỗi hàng.
Ví dụ: cơ sở dữ liệu xe hơi của bạn có thể có một vài bảng. Một bảng có thể chứa dữ liệu thương hiệu, chẳng hạn như nhãn hiệu, mô hình và VIN. Một bảng khác có thể lưu trữ các thuộc tính của từng chiếc xe, như chủ sở hữu, màu sắc và số dặm. Một số cơ sở dữ liệu quan hệ phổ biến nhất bao gồm MySQL, PostgreSQL và SQL Server.
Trong phát triển web, một công cụ Ánh xạ quan hệ đối tượng (ORM) chuyển đổi dữ liệu được gửi từ một ứng dụng hướng đối tượng sang cơ sở dữ liệu quan hệ mà không yêu cầu ứng dụng biết dữ liệu đó được cấu trúc như thế nào trong cơ sở dữ liệu.
Ánh xạ quan hệ đối tượng
Bạn có thể tạo một ánh xạ quan hệ đối tượng, đôi khi được gọi là trình quản lý quan hệ đối tượng, hướng dẫn cơ sở dữ liệu của bạn về nơi định vị tất cả dữ liệu được yêu cầu bởi một ứng dụng, mặc dù mỗi cấu trúc lưu trữ dữ liệu của nó theo một cách khác nhau. Khi ứng dụng của bạn yêu cầu tất cả các thuộc tính của một chiếc xe riêng lẻ, ORM hướng dẫn cơ sở dữ liệu cách truy xuất tất cả dữ liệu đó trên nhiều bảng.
Bởi vì các ánh xạ được trừu tượng hóa, nếu cấu trúc cơ sở dữ liệu thay đổi hoặc bạn di chuyển sang cơ sở dữ liệu mới, ORM vẫn có thể trỏ đến dữ liệu chính xác với các bản cập nhật tối thiểu.
Khung ORM phổ biến
Các công cụ, hoặc khung ORM có sẵn để mô hình hóa dữ liệu theo nhiều ngôn ngữ lập trình hướng đối tượng phổ biến nhất. Một số ngôn ngữ phổ biến nhất bao gồm:
- Hibernate dành cho Java
- SQLAcademy dành cho Python
- Khung thực thể dành cho .NET/C #