> I'll give you just one scenario to help you see that views and triggers are not always enough. How are views and triggers not enough for this? ``` SQLite version 3.34.0 2020-12-01 16:14:00 Enter ".help" for usage hints. Connected to a transient in-memory database. Use ".open FILENAME" to reopen on a persistent database. sqlite> create table people (pid, name, address); sqlite> create table phones (pid, phone); sqlite> create view add_person as select pid, name, address, phone from people inner join phones using (pid); sqlite> create trigger add_person_trg instead of insert on add_person begin insert into people values (new.pid, new.name, new.address); insert into phones values (new.pid, new.phone); end; sqlite> insert into add_person values (1, 'First Last', 'Home', '555-1212'); sqlite> select * from people; pid|name|address 1|First Last|Home sqlite> select * from phones; pid|phone 1|555-1212 sqlite> ```