gpt4 book ai didi

database - 数据导入是否会替换 MySQL Workbench 中的现有数据?

转载 作者:搜寻专家 更新时间:2023-10-30 20:25:42 25 4
gpt4 key购买 nike

我在 MySQL Workbench 的开发环境中处理数据库。我已准备就绪,需要将其移至产品数据库。我已经将它导出到一个 sql 文件,但我不确定我是否以正确的方式进行导入。

如果我使用“数据导入/恢复”功能,选择我的 SQL 文件并导入,它会替换数据库中的现有数据(我想要发生的事情)还是会为每个表添加新记录新数据?

每个数据库中的模式都是相同的。我只需要用来自 dev 的新数据替换 prod 数据库中的旧数据。

谢谢你的帮助

最佳答案

这取决于您的导出文件的外观。只需在文本编辑器中打开它并阅读导出文件中的语句即可。

默认情况下,它应该包含如下语句:

CREATE TABLE IF NOT EXISTS `customer` (
`CUSTOMER_ID` int(11) NOT NULL,
`CUSTOMER_NM` varchar(100) DEFAULT ''
) EN

紧随其后的是这张表的数据:

INSERT INTO `customer` (`CUSTOMER_ID`, `CUSTOMER_NM`) VALUES
(0, 'Dummy Customer');
(1, 'Dummy Two');

由于您的表已经存在于您的 PROD 环境中,因此它不会删除、创建或替换它们(请注意 CREATE TABLE IF NOT EXISTS-语句)。 INSERT-Stamement 将被执行(没有条件表明它不应该执行)。

因此,在导入您的文件后,您的数据库中将拥有之前的 PROD 数据 + 导入的 DEV 数据将成为您的 DEV 环境。

另一方面,它可以包含如下语句:

DROP TABLE IF EXISTS `customer`

紧随其后的是 CREATE-Statement,紧接着是一些 INSERT-Statements。在这种情况下,您的整个 PROD-Database 将被您希望的 DEV-Database 替换。

关于database - 数据导入是否会替换 MySQL Workbench 中的现有数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35135894/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com