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

Kết nối nhiều bảng trong các cơ sở dữ liệu khác nhau? MySql

Một chiến lược tốt cho bạn có thể là xác định một người dùng MySQL duy nhất có cùng quyền truy cập vào cả hai cơ sở dữ liệu. Một cái gì đó như thế này:

GRANT ALL ON siteinfo.* TO [email protected] IDENTIFIED BY 'password';
GRANT ALL ON sitedescriptions.* TO [email protected] IDENTIFIED BY 'password';
FLUSH PRIVILEGES;

Khi bạn thiết lập kết nối với tư cách là người dùng đó, bạn sẽ có quyền truy cập vào cả hai cơ sở dữ liệu và có thể tham chiếu chúng dễ dàng bằng cách đặt trước tên bảng của bạn với tên cơ sở dữ liệu.

SELECT * FROM siteinfo.sites;

Bạn thậm chí có thể nối các bảng của mình trên các cơ sở dữ liệu theo cách này mà không gặp khó khăn gì. Vì vậy, để trả lời câu hỏi thứ hai của bạn, để có tất cả ba hàng mô tả cho một trang web, bạn có thể làm điều này (giả sử các trang web có cùng id trong mỗi cơ sở dữ liệu, hoặc cùng một tên hoặc một cái gì đó duy nhất mà bạn có thể tham gia):

SELECT * FROM
    siteinfo.sites AS s LEFT JOIN 
    sitedescriptions.description AS d ON s.siteId=d.siteId
WHERE s.siteId=123;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Nhược điểm của việc lưu trữ hình ảnh trong Cơ sở dữ liệu?

  2. Cách nhận ID chữ-số tiếp theo dựa trên giá trị hiện có từ MySQL

  3. MySql phiên bản di động

  4. Cách thực hiện tham gia toàn bộ bên ngoài trong MySQL

  5. Khôi phục giao dịch Mysql khi không cập nhật được