MySQL-具有多个架构的数据库,其中表和列的名称不同

时间:2019-07-16 12:14:16

标签: php mysql schema

是否有一种方法可以用不同的表名和列名表示一个数据库?

我正在创建一个大型的API重构,仅在MySQL数据库中重命名相当多的表名和列名才有意义,但是旧版本的API仍需要读取和写入现有数据库。数据基本相同,并且版本可以轻松共存。没有机会让两个数据库并行运行。

新的API域层与持久性层完全分开,但是在持久性层中,我想使用新的表名和列名正确地创建它,而不必为每个查询转换名称。

是否存在一种以多种方式表示数据库结构的方法-有效地命名变量?你能建议我一个解决方案吗? 是否有通过替换数据库架构来解决此问题的方法?

我希望API的两个版本可以对数据库进行读写操作,在数据库中可以存在表名(命名差异如下),但是表和数据相同。

+----------------------------+  +-------------------------+
|          old_items         |  |        new_items        |
+----+----------+------------+  +----+----------+---------+
| id | meta_key | meta_value |  | id | item_key | item_id |
+----+----------+------------+  +----+----------+---------+

该应用程序是用PHP编写的。

谢谢。

1 个答案:

答案 0 :(得分:0)

为什么要重命名列,在获取列名称时可以使用别名。像

select metavalue as itemvalue from tablename

或者,您可以为每个实体创建两个单独的表。那是有道理的。