我曾希望我能够使用 SQL 视图而不是表来提供例如iaxusers
并iaxpeers
通过动态实时 (ARA) 提供给 Asterisk。
我刚刚注意到iaxpeers
Asterisk 显然需要几个列来存储特定于对等点的信息:ipaddr
, port
, regseconds
. 因此,简单的视图是行不通的。
有没有办法仍然使用视图,例如,iaxpeers
或者我是否必须创建一个表,并可能使用触发器而不是视图的(更方便的)SELECT
语句将它与我的核心数据结构(也是表)同步 - 推送而不是拉,可以这么说。(我正在使用 PostgreSQL,其视图显然是只读的。)
iaxpeers
我得出的结论是视图(而不是表)适用于某些但并非所有动态 ARA 系列,并且至少在 PostgreSQL 的情况下它们不适合。这是因为 Asterisk 需要读写访问权限,例如这个系列。因此,我从视图切换到了表。它的行现在由触发器从我的核心数据结构(即其他表)“推送”,而不是由视图“拉”。