Đối với Oracle,
CREATE DATABASE LINK ...
ví dụ:
Với một liên kết cơ sở dữ liệu được tạo và thử nghiệm, bạn có thể thực hiện một truy vấn (theo kiểu bạn đã hiển thị) để truy xuất các hàng từ cơ sở dữ liệu từ xa.
Tham khảo: http://docs.oracle.com /cd/E11882_01/server.112/e41084/statements_5005.htm#SQLRF01205
THEO DÕI
LƯU Ý:Trong Oracle, thuật ngữ "cơ sở dữ liệu" đề cập đến các tệp dữ liệu và tệp nhật ký được liên kết với một "phiên bản" Oracle. Để truy xuất dữ liệu từ "cơ sở dữ liệu" thứ hai có nghĩa là bạn cần kết nối thứ hai với cơ sở dữ liệu kia. Oracle cung cấp một cơ sở được gọi là "liên kết cơ sở dữ liệu". Điều đó cho phép một phiên (kết nối) với một cá thể cơ sở dữ liệu kết nối với một cá thể cơ sở dữ liệu khác. (Nếu không có tiện ích này, khách hàng sẽ cần tạo hai kết nối riêng biệt và sẽ cần truy vấn hai cơ sở dữ liệu riêng biệt.)
Nếu câu hỏi này liên quan đến truy vấn từ hai "lược đồ" riêng biệt trong cùng một cùng cơ sở dữ liệu, miễn là người dùng có đủ đặc quyền trên các đối tượng trong lược đồ thứ hai, mã định danh có thể đủ điều kiện với tên của lược đồ, ví dụ:
SELECT * FROM UATDEVORADB.TABLE_NAME
Để truy cập dữ liệu trên một cơ sở dữ liệu riêng biệt, có thể sử dụng liên kết cơ sở dữ liệu ...
CREATE DATABASE LINK UADEVORADB
CONNECT TO user
IDENTIFIED BY password
USING 'uadevoradb' ;
(Điều này sẽ yêu cầu một mục nhập phù hợp trong tệp tnsnames.ora trên máy chủ Oracle hoặc máy chủ tên oracle, hoặc chi tiết kết nối có thể được viết thay cho mục nhập tnsnames.ora, đại loại như:
CREATE DATABASE LINK UADEVORADB
CONNECT TO user IDENTIFIED BY password
USING '(DESCRIPTION=
(ADDRESS=(PROTOCOL=TCP)(HOST=uadevorahost1)(PORT=1521))
(CONNECT_DATA=(SERVICE_NAME=uadevoradb.domaindb)))'
Nếu "người dùng" được chỉ định trong liên kết cơ sở dữ liệu khác với "chủ sở hữu" của bảng trên hệ thống từ xa và không có từ đồng nghĩa nào tham chiếu đến bảng, thì số nhận dạng bảng sẽ cần phải đủ điều kiện với chủ sở hữu ...
SELECT * FROM [email protected] ;