在phpMyAdmin
中,我想将数据库复制到另一个名称,这样我就可以有效地拥有2个数据库。一个是我的oringinal,另一个用于测试我的暂存网站。
有三个主要选项
structure only
structure and data
data only,
我需要结构和数据,但下面有更多复选框选项;
CREATE DATABASE before copying //was checked by default
Add DROP TABLE / DROP VIEW
Add AUTO_INCREMENT value //was checked by default
Add constraints
Switch to copied database
“添加AUTO_INCREMENT值”和“添加约束”是什么意思,如果我复制结构和数据,那么AI的任何字段都不会被复制?
答案 0 :(得分:9)
导出/导入包含结构和数据的数据库时,phpmyadmin会将其恢复到原来的状态。复制数据库时也是如此。
Add AUTO_INCREMENT value
只需正确设置auto_increment值,以便正确使用已还原的数据库。这是必要的,以防phpmyadmin执行某种批量插入,其中auto_increment不会在每个插入上递增。
这也需要设置正确的值,因为您可以插入然后删除表中的一些数据,因此为了保持数据的一致性,您不仅要保留确切的ID,还要使用已经使用的ID。旧行。
Add constraints
完全符合它的含义,即它恢复数据库中表的所有约束。如果你想要一个complet转储,这也是必需的。
对于您要做的事情,也许数据库复制会更好。
答案 1 :(得分:4)
如果选中“添加AUTO_INCREMENT值”和“添加约束”复选框,则新表应具有相同的下一个自动索引和约束,如复制的表。 AI的所有字段都填满
答案 2 :(得分:2)
“添加AUTO_INCREMENT”在新复制的数据库中继续自动增量。如果我们取消选中,那么它将停止从该字段的自动增量。所以,如果我们想要保持自动增量到新数据库,那么请选中“添加AUTO_INCREMENT”