有什么想法如何比较两个 SQL DDL 并创建更改/删除/创建脚本并保留数据库数据吗?

发布于 2024-10-18 16:16:28 字数 325 浏览 2 评论 0原文

您能否建议如何比较两个 SQL DDL 脚本并创建更改/删除/创建保持当前数据库数据的 SQL 脚本?

我尝试了 SQLAlchemy-migration ,它需要手动执行 python 声明更改脚本,这不是解决方案,因为我可以使用 SQL DDL 手动执行相同的操作(我目前所做的)

我寻找可以做到这一点的 python SQLAlechemy 解决方案,但不是能够找到像 Django South 或许多 RoR 迁移插件这样的东西。

仍在检查如何做到这一点的想法,如果没有当前的解决方案,也许,我需要编写一些简单的解决方案自己完成,但仍然需要建议。

欢迎任何建议:)

Can you suggest any ideas how to compare two SQL DDL scripts and create alter/delete/create SQL script keeping the current DB data?

I tried SQLAlchemy-migration and it requires to do python declaration alter script manually that is not as solution, as I can do the same manually with SQL DDL (what I do currently)

I looked to python SQLAlechemy solutions that can do it and was not able to find anything like Django South or many RoR migration plugins.

Still checking for ideas how to do it, if there is no current solution, maybe, I'll need to write some simple solution do it by my own, but still need suggestions.

Any suggestions are welcome :)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

旧时模样 2024-10-25 16:16:28

我对你的问题的解释是,你有两个不同的 SQL DDL 脚本,并且你想生成一个“diff”脚本将一个脚本转换为另一个脚本?我的第一个想法是 Ruby on Rail 的迁移,但你说你已经已经调查过了。也许您需要简单地手动编写 diff 脚本?

这是一篇关于在没有 Rails 的情况下使用迁移的博客文章。

您可以尝试 SqlDelta,但它看起来像一个商业产品。

另请参阅此 stackoverflow 问题

My interpretation of your question is that you have two different SQL DDL scripts, and you want to produce a 'diff' script that transforms one into the other? My first thought would be Ruby on Rail's migrations, but you say you've already looked into that. Perhaps you need to simply write the diff script manually?

Here's a blog post about using migrations without Rails.

You could try out SqlDelta, but it looks like a commercial product.

See also this stackoverflow question.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文