使用phpMyAdmin将表导入现有表

时间:2013-03-04 09:46:58

标签: import phpmyadmin

当我这样做时它会创建一个新表但我已经选择了要导入的表。我尝试过CSV和ODS格式,仍然可以得到相同的结果。我现有表中的第一列是ID自动递增。我已经尝试放入一个空白列(在我正在导入的文件中)进行补偿,我也尝试了它而没有添加额外的列。我在这里错过了一些简单的东西吗?

5 个答案:

答案 0 :(得分:3)

您当然可以将一个表导入Phpmyadmin中的另一个表。

  1. 规范化两个表,使结构匹配
  2. 将表重命名为您要导出以匹配导入到
  3. 的表
  4. 在普通SQL中继续导出/导入,自动合并
  5. 我刚刚成功地完成了这些步骤,从Phpmyadmin 3.3.2中的表中单独导入了几列,并尝试将它们导入到Phpmyadmin 3.5.1中的表中,起初发生的一切都是旧表被复制到新数据库中,但是一旦我将其重命名为适合新表的名称(并对结构进行规范化),这就解决了。

答案 1 :(得分:3)

首先,我是新手,但只是愚弄试图弄清楚如何完成类似的事情,并让它发挥作用,很难相信这里的答案。

我们在这里谈论phpMyAdmin,它有无穷无尽的选择。您可以选择使用选项导出原始表 - 在过程中重命名数据库和表 - 告诉某人重命名现有数据库或表是最不负责任的。不需要它。

另外,似乎没有人提到我们真正想做的是将COLUMNS导入到现有表中 - 除了表和数据库名称之外,表格在各方面都是相同的,对吧?

这就是我的所作所为: 我做了一个简单的原始表导出,除了名称之外,它是相同的目标表。我在SQL Management Studio中打开了sql文件(从MS中解放出来,你也可以使用像TextPad这样的东西做同样的事情)并在开头删除所有关于创建数据库,表格等的东西(放到它说的地方) " INSERT" - 离开那个)。然后,我用现有的目标表名替换了orgin表名的任何实例。然后,您将在该sql文件中看到所有数据列。删除要导入的最后一列之后的所有内容。没有别的需要。使用目标表名称保存该文件。导入那个sql文件 - 没什么花哨的需要。完成。

请注意,如果目标表中已有列,那么您在第一列上会出现错误,因为您在目标中使用的主键与其尝试相同在原始列中使用。老实说,我不知道如何以优雅的方式解决这个问题。我已经在目标表中有7列(主键1-7),所以我只是在编辑sql文件时剪切这些列,粘贴在列列表的末尾,并将键从最后一个按顺序更改。您还必须更改最后一行的上一个结尾;到,然后新的最后一行从,到;希望如果你必须这样做,那么有更多经验的人可以提出一个更好的方法来做到这一点 - 比如忽略导入的密钥并在导入时自动增加。或者更好的导出方式,以便在导入时自动处理该部分。就像我之前提到的那样,有一个TON的导出选项,包括能够在导出期间修复数据库和表名。我确定还有一些关于主键自动增量的东西。

BTW,当你说"选择表"你是说在左边的表格列表上点击它,然后点击右边的导入按钮?我认为这意味着什么,如果那是你的意思。这不代表任何意思。导入按钮导入一个sql脚本 - 就是它。会发生什么,它去哪里等等完全取决于脚本本身。

希望这有助于某人。

答案 2 :(得分:1)

您无法在phpmyadmin中将一个表导入另一个表 如果您尝试这样做,它将在您的数据库中创建新表 如需更多帮助,请参考以下内容: IMPORTING DATABASES AND TABLES WITH PHPMYADMIN

答案 3 :(得分:1)

只要您将工作表命名为与表名相同,就可以从excel文件导入现有表。

所以,如果我试图导入我的"所有者"表,我会在Excel"所有者"。

中命名我的工作表

答案 4 :(得分:0)

如果从另一个phpMyAdmin数据库下载导入。 从自定义下载表格时,“格式特定”选项可以选择仅包含数据(无结构)。 然后它将毫无问题地导入。

对于其他导入,您将必须手动修改数据以使其没有结构属性。