问题标签 [legacy-database]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2597 浏览

nhibernate - 使用外键将一对多集合映射到外键

我正在使用 nhibernate 映射旧数据库,并且在映射关系时遇到了一些问题。

这两个类看起来像这样

像这样的表

两个表之间的关系是 formcode 列。

我现在的映射是这样的

当我运行映射时,假设它试图将表单代码放入问题的 ID 中,我得到一个标识符类型不匹配。不幸的是,我无法更改表格的结构,我不知道如何映射它,任何帮助将不胜感激。

0 投票
6 回答
1423 浏览

.net - 你会选择什么 ORM 来处理遗留数据库?

我正在整合一些遗留系统。他们每个人都有不同的数据库;我需要为其中的大多数编写数据访问代码。

无法更改数据库模式(我可能可以应用一些索引等,但表及其列必须保留结构)。一些数据库设计良好,具有适当的关系和主/外键,而其他一些数据库则非常缺乏。

您会为此任务选择哪个 ORM?我想在整个项目中使用相同的 ORM;我的要求是:

  • 能够在代码中重命名表或列;但在数据库中保留旧名称。
  • 合理的代码生成
  • 高效的 LINQ 支持(针对数据模型的 LINQ 查询应转换为高效的 SQL)。
  • 生成的数据类最好是POCO 的
  • 最好支持不同的数据库引擎。

我目前对 LINQ-To-SQL 的经验最丰富;但我觉得这可能是这个项目的错误选择。我愿意花一些时间来学习一个新的框架。

0 投票
1 回答
806 浏览

database - 如何访问旧 DOS RapidFile 数据文件中的数据

我需要访问一些以旧 DOS 格式存储的数据。特别是使用 Ashton-Tate 的 RapidFile 格式。

有谁知道是否有 ADO 驱动程序或任何其他更“现代”的数据访问技术可以让我读取数据?

0 投票
11 回答
39281 浏览

definition - 遗留数据库一词是什么意思?

我读了很多这个词。什么是遗留数据库?我问是因为我认为这意味着像 dbase 或 rdb 这样的旧数据库,但我认为我是对的。

在查看 RoR 或 Django 和“遗留数据库”集成时,遗留数据库的真正含义是什么?它与通用术语“遗留数据库”不同吗?

0 投票
2 回答
792 浏览

nhibernate - 我可以将 nHibernate 与没有参照完整性的遗留数据库一起使用吗?

如果我有一个没有引用完整性或键的旧数据库,并且它使用存储过程进行所有外部访问,那么使用 nHibernate 持久化实体(对象图)有什么意义?

另外,SP 不仅包含 CRUD 操作,还包含业务逻辑......

我开始认为坚持使用自定义 ado.net DAL 会更容易:(

干杯

奥利

0 投票
2 回答
487 浏览

ruby-on-rails - 将 RoR 与使用 EAV 的旧表一起使用

我需要连接到旧数据库并从使用实体属性值模型存储联系人信息的表中提取数据子集。该表如下所示:

wherefieldid是表的外键,该fields表列出了给定客户可以拥有的自定义字段(例如名字、姓氏、电话)。所涉及的 SQL 相当繁琐,因为我必须为我想要返回的每个字段(目前我需要 6 个字段)将表加入到自身,以及加入基于当前用户的主联系人列表。

SQL 是这样的:

我应该如何使用我的 RoR 应用程序来处理这个问题?我想把它抽象出来,并且仍然能够使用正常的“点符号”来提取属性。幸运的是,在可预见的未来,数据是只读的。

0 投票
1 回答
141 浏览

sql - 通过触发器将 MySQL 模式同步到模式?

快速说明:我有 19 天的时间来解决我客户的问题。

背景:客户聘请了一名承包商,他吹嘘自己可以在 3 个月内推出一款新应用程序。两个月又几天后,我被带进来,那个人被放了;没有完整的代码,没有考虑到架构,以及对 UI 的厌恶。

我有两个应用程序:一个是生产和成熟,另一个需要一些爱。一个有我需要的所有数据,另一个没有。我正在编写新的代码 TDD 风格,目标是构建一个部分受陪审团操纵的 SOA 基础架构,该基础架构涵盖除数据本身之外的所有问题。如果我有更多的时间,我可以使用 liquibase 将模式重构为可憎的碎片(发挥你的想象力),但我不......所以计划 B 如下:

App A (inserts|updates|deletes) 实体 Foo 更新 AppASchema.FooTable ,后者通过后触发器更新 AppBSchema.FooLikeTable ,反之亦然。

我知道这是一个疯狂的想法,但这是我所拥有的最糟糕的想法中最少的一个,我担心的是

  1. 可以创建一个无限循环(AppA 触发器更新 AppB 更新 AppA )
  2. 没有高负载,但这基本上将操作数加倍到 n*2,所以如果我达到 MySQL 服务器的一半容量,对于更新索引等基本内容,它似乎有效或接近满容量。
  3. 作为一个喜忧参半,最初的模式设计者让所有的表 InnoDB 引擎......这对性能来说太可怕了,但这种设置能否确保更高的机会保持完整性。

我实施触发器的时间预算是 12 小时或破产。

0 投票
2 回答
310 浏览

python - Django & 自定义遗留数据库

我目前正在开展一个项目,以实现现有日历应用程序的 Django 接口。日历应用程序将 MySQL 作为后端数据库。

在我们的自定义应用程序中,我们想修改/扩展现有日历应用程序使用的表之一中的数据,例如

我们还希望我们的数据表示与现有日历表保持同步,即当在日历应用程序中创建新条目时,这些将自动传播到我们的自定义表。

我可以想到几种明显的方法来做到这一点(例如,由 cron 或 MySQL 触发器启动的同步脚本),但我不觉得这些解决方案特别优雅。

一种可能性是为 CustomCalendarEvent使用自定义管理器并覆盖get_query_set功能以触发同步功能。

这是对 Django CustomManagers 的合法使用吗?如果没有,有人可以推荐解决此问题的替代方法吗?

0 投票
1 回答
1274 浏览

python - sqlalchemy 0.6 遗留数据库访问?

我觉得这应该很简单,但我找不到一个例子。

例如,我有以下现有表:

我想使用 sqlalchemy 0.6 向事件表中添加很多行。我看过一些 sqlsoup 示例,但真的很讨厌它通过不断调用 db 对象来访问 db 的方式。我遵循了 db 反射的文档并做到了这一点:

这会返回一个非常丑陋的对象。我真的想要 sqlalchemy ORM 的映射器功能,这样我就可以构造 Event 对象以插入数据库。

我查看了 sqlsoup 的东西:

但我不知道如何从这一点添加对象。我什至不确定这是我想要的,我希望能够遵循教程和 declarative_base 的东西。这是否可能无需重写一个类来对整个表结构进行建模?如果不是,有人可以告诉我在这个例子中我会怎么做吗?

有人可以让我找到正确的路径来让映射器工作吗?

0 投票
2 回答
1187 浏览

php - 循环遍历 mysql 数据库记录并更改手机格式

我正在处理一个有电话号码的旧数据库表。场地

但问题是所有条目(超过 4k)都在变化

格式。

我想知道是否有一种快速的方法可以通过使用 PHP 循环记录并将记录更新为特定的电话格式来修复它们