MYSQL 将列中的所有数据从一个数据库复制到另一个数据库的查询
MYSQL Query to copy all data in a column from one database to another
我不小心在 Opencart 的 SEO 工具上使用了“生成描述”功能,它用产品标题覆盖了我所有的产品描述。
我有 600 多种产品,再次 re-do 会很痛苦。
我有一个 MYSQL 2 个月前的备份,其中包含大部分产品,除了大约 20 个是之后添加的。
我已经将旧备份导入到新创建的数据库中,我可以运行 将所有描述列数据从备份table复制并覆盖到我当前的table ]?
它们位于 database.oc_product_description.description
非常感谢任何帮助。这让我发疯
如果两个模式都在同一个 MySQL 实例中,则使用 REPLACE INTO
语句(在操作前进行备份)
old 表示:恢复数据库
数据库表示:当前数据库
REPLACE INTO database.oc_product_description
SELECT * FROM old.oc_product_description
这条语句将通过主键替换数据
如果您不想复制整个 table,则进行更新并将数据从旧的复制到数据库(product_id 和 language_id 列是主键)
UPDATE database.oc_product_description AS pd1
INNER JOIN old.oc_product_description AS pd2 ON pd2.product_id = pd1.product_id
AND pd2.language_id = pd1.language_id
SET pd1.description = pd2.description
我不小心在 Opencart 的 SEO 工具上使用了“生成描述”功能,它用产品标题覆盖了我所有的产品描述。
我有 600 多种产品,再次 re-do 会很痛苦。
我有一个 MYSQL 2 个月前的备份,其中包含大部分产品,除了大约 20 个是之后添加的。
我已经将旧备份导入到新创建的数据库中,我可以运行 将所有描述列数据从备份table复制并覆盖到我当前的table ]?
它们位于 database.oc_product_description.description
非常感谢任何帮助。这让我发疯
如果两个模式都在同一个 MySQL 实例中,则使用 REPLACE INTO
语句(在操作前进行备份)
old 表示:恢复数据库 数据库表示:当前数据库
REPLACE INTO database.oc_product_description
SELECT * FROM old.oc_product_description
这条语句将通过主键替换数据
如果您不想复制整个 table,则进行更新并将数据从旧的复制到数据库(product_id 和 language_id 列是主键)
UPDATE database.oc_product_description AS pd1
INNER JOIN old.oc_product_description AS pd2 ON pd2.product_id = pd1.product_id
AND pd2.language_id = pd1.language_id
SET pd1.description = pd2.description