PostgreSQL高级构建块与SQL语言详解
一、使用触发器使视图可更新
在PostgreSQL中,对于那些不能自动更新的视图,可以利用触发器系统使其变得可更新。以 seller_account_information
视图为例,它展示了卖家账户的相关信息,但不能自动更新,以下是创建该视图的代码:
CREATE OR REPLACE VIEW seller_account_info AS
SELECT
account.account_id,
first_name,
last_name,
email,
password,
seller_account_id,
total_rank,
number_of_advertisement,
street_name,
street_number,
zip_code ,
city
FROM
account INNER JOIN
seller_account ON (account.account_id =
seller_account.account_id);
可以通过以下查询来验证该视图是否可插入:
SELECT is_insertable_into FROM information_schema.tables
WHERE table_name = 'seller_account_info';
查询结果显示 is_insertable_into </