我发现以下代码可以从另一个表更新表,
UPDATE
Sales_Import
SET
Sales_Import.AccountNumber = RAN.AccountNumber
FROM
Sales_Import SI
INNER JOIN
RetrieveAccountNumber RAN
ON
SI.LeadID = RAN.LeadID
但是如果这些表位于不同的服务器上,并且其中一个是本地的,我可以这样做吗?
我发现以下代码可以从另一个表更新表,
UPDATE
Sales_Import
SET
Sales_Import.AccountNumber = RAN.AccountNumber
FROM
Sales_Import SI
INNER JOIN
RetrieveAccountNumber RAN
ON
SI.LeadID = RAN.LeadID
但是如果这些表位于不同的服务器上,并且其中一个是本地的,我可以这样做吗?
您可以使用链接服务器。在这种情况下,您应该使用格式 {server_name}.{database_name}.{schema_name}.{table_name} 来标识其他服务器上的表。
如果其中一个表(例如 RetrieveAccountNumber)在另一台服务器上(您可以将其命名为 A),并且其中一个是本地的,那么您可以将查询重写为:
UPDATE
Sales_Import
SET
Sales_Import.AccountNumber = RAN.AccountNumber
FROM
Sales_Import SI
INNER JOIN
A.{the_database_name}.{schema_name}.RetrieveAccountNumber RAN
ON
SI.LeadID = RAN.LeadID
Adham,我相信您可以转储表并将其卸载到另一个数据库中:
mysqldump -uYOUR_USER -p db-name-from tablename | mysql -uYOUR_USER -p -h server-to db-name-to
它基本上是两个串联的动作。
如果是 mysql,请尝试镜像(复制)。或者尝试集群。好吧,使用公共数据库链接的 Oracle 数据库已经超越了这一点
Oracle 具有数据库连接,允许您在一个数据库中工作,并在完全不同的服务器上连接到完全不同的数据库。SQL-Server 也有这个功能,但它被称为数据库链接。
但是,据我所知,MySQL 没有这个特性。