0

我有一个基于我的数据库中的产品表构建的长列表 API 调用,今天我们想向该表添加一个子产品(添加一个新表或自反关系)

但是我们需要避免编辑所有API的Call / Query,Mysql下有没有解决方案可以在执行之前编辑查询的子句?

4

1 回答 1

0

实际上没有直接回答您的问题,但无论如何它可能会有所帮助。

您可以创建一个视图,它就像一个虚拟表。例如,如果您有桌子

product(id, attr1)
subproduct(id, subattr1, subattr2)

您可以创建一个视图

CREATE VIEW legacy_products AS
SELECT
  p.id, p.attr, s.subattr
FROM
  products p LEFT JOIN subproducts s ON p.id = s.id

如果您仔细定义视图,您可以避免更改一长串 API 调用。但前提是它们仅包含SELECT查询。可以使视图可更新,但对于两个或多个基表上的视图(如示例中所示),这通常是不正确的。

SQLFiddle 玩弄:http ://sqlfiddle.com/#!2/85676/1 查看此视图​​定义:http ://dev.mysql.com/doc/refman/5.1/en/create-view.html

于 2013-07-24T19:59:54.417 回答