【问题标题】:mysql data sync within different table structure不同表结构内的mysql数据同步
【发布时间】:2017-08-02 17:29:14
【问题描述】:

现在,我有两个不同数据库的表,也有不同的表结构,众所周知,这是两个相同的项目,分别命名为 old 和 new,旧项目有一些用户模块,它已经有一些用户数据,如何导出旧用户表数据并导入新用户表数据。是否有工具或php代码可以做到这一点?更多的模块会这样做。

谢谢。

【问题讨论】:

    标签: mysql


    【解决方案1】:

    您可以使用 SQL INSERT INTO SELECT 例如:

    INSERT INTO Customers (CustomerName, ContactName, Address, City, PostalCode, Country)
    SELECT SupplierName, ContactName, Address, City, PostalCode, Country FROM Suppliers;
    

    以上示例适用于同一架构中的两个表。如果您的表位于单独的架构中,则应在查询中添加前缀 schema_name.table_name。 参考:https://www.w3schools.com/sql/sql_insert_into_select.asp

    【讨论】:

    • 如果这些表有关系,比如我被插入到用户表中一行,那么我需要这个自增id作为uid,子表需要这个uid,其他一些旧数据变成排了,怎么办?另一方面,我可以直接使用旧的uid插入新的用户表,也许这不是一个好主意。
    • @Carey:据我了解,您想将 uid 从旧表移动到新表。在这种情况下,您可以直接使用您提到的旧 uid 插入新用户表。另一方面,您可以为具有自动增量的新表创建 id,并为旧表数据创建 uid。
    猜你喜欢
    • 2011-10-30
    • 2020-03-12
    • 1970-01-01
    • 2010-12-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-29
    相关资源
    最近更新 更多