我发现以下代码可以从另一个表中更新表,
UPDATE
Sales_Import
SET
Sales_Import.AccountNumber = RAN.AccountNumber
FROM
Sales_Import SI
INNER JOIN
RetrieveAccountNumber RAN
ON
SI.LeadID = RAN.LeadID
但如果表位于不同的服务器上,并且其中一个是本地的,我可以这样做吗?
答案 0 :(得分:0)
Adham,我相信你可以转储表并将其卸载到其他数据库中:
mysqldump -uYOUR_USER -p db-name-from tablename | mysql -uYOUR_USER -p -h server-to db-name-to
基本上是两个串联的动作。
答案 1 :(得分:0)
如果是mysql,请尝试镜像(复制)。 或尝试集群。 那么这一点在使用公共数据库链接的Oracle数据库中被取代了
答案 2 :(得分:0)
Oracle具有数据库连接,允许您在一个数据库中工作,并在完全不同的服务器上连接到完全不同的数据库。 SQL-Server也具有此功能,但它被称为数据库链接。
但据我所知,MySQL没有此功能。
答案 3 :(得分:0)
您可以使用链接服务器。在这种情况下,您应使用格式{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
答案 4 :(得分:0)