【发布时间】:2019-07-16 20:21:23
【问题描述】:
有没有办法让一个数据库可以用不同的表名和列名表示?
我正在对 API 进行大规模重构,在这种情况下,重命名 MySQL 数据库中相当多的表名和列名才有意义,但旧版本的 API 仍然需要读取和写入现有数据库。数据基本相同,版本可以轻松共存。没有机会让两个数据库并行运行。
新的 API 域层与持久层完全分离,但在持久层中,我想使用新的表名和列名正确创建它,而不必为每个查询转换名称。
有没有办法以多种方式表示数据库结构 - 有效地制作命名变量?你能建议我一个解决方案吗? 有没有例如一种通过替换数据库模式来解决这个问题的方法?
我希望这两个版本的 API 可以读取和写入数据库,其中表可以存在,但命名不同 - 但表和数据是相同的。
+----------------------------+ +-------------------------+
| old_items | | new_items |
+----+----------+------------+ +----+----------+---------+
| id | meta_key | meta_value | | id | item_key | item_id |
+----+----------+------------+ +----+----------+---------+
应用程序是用 PHP 编写的。
谢谢。
【问题讨论】: