# FRQ: Database Inheritance

**URL:** <https://community.fibery.io/t/frq-database-inheritance/4528>\
**Category:** Ideas & Features\
**Created:** [June 1, 2023, 4:44am UTC](https://community.fibery.io/t/frq-database-inheritance/4528 "2023-06-01T04:44:42Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![njyo](https://sea2.discourse-cdn.com/flex020/user_avatar/community.fibery.io/njyo/32/923_2.png) [@njyo](https://community.fibery.io/u/njyo)\
**Post date:** [June 1, 2023, 4:44am UTC](https://community.fibery.io/t/frq-database-inheritance/4528/1 "2023-06-01T04:44:43Z")

</div>

Hi,

For certain types of databases (i.e. Tasks, People, Organisations, Tools) I would like to have the ability to inherit/extend databases.

For example:

1. I want a base database called `Person` which has a few basic fields: given name, surname, email, phone, etc.
2. I’ll have database called `Staff` that extends `Person`, which in addition has fields like: join date, role, salary, etc.
3. I’ll have a database called `Contact` that extends `Person`, which adds fields like: company, meetings, etc.
4. I’ll have a database called `Recruit` that extends `Person`, which adds fields like: source, CV, website, etc.

Currently we have to choose between:  
2. One massive database with lots of irrelevant fields, which also confuses

1. Multiple databases with same fields, which requires us to convert entities at times and/or duplicate results, which confuses folks
2. Multiple extension databases: One `Person` database and then `Person-Staff`, `Person-Contact`, etc. that maybe automatically connects some entries.

As you can imagine, none of these approaches are ideal for users as they are confusing and certain fields do not map, etc.

I love that I can have multipole entity types on a board (we use this for our task kanban), but of course I’d rather have a board that just lists all tasks irrespective if they are dev tasks, business tasks or support tasks (tickets)…

Thanks! 🙂

---

<div class="post-metadata">

**Author:** ![Polina\_Zenevich](https://sea2.discourse-cdn.com/flex020/user_avatar/community.fibery.io/polina_zenevich/32/480_2.png) [@Polina\_Zenevich](https://community.fibery.io/u/Polina_Zenevich)\
**Post date:** [June 1, 2023, 9:12am UTC](https://community.fibery.io/t/frq-database-inheritance/4528/2 "2023-06-01T09:12:00Z")

</div>

Hi!  
Maybe I didn’t fully get the case, but

1. I have fields on the Person database
2. On Staff database I have new fields & lookup data from Person

What am I missing? 👀

---

<div class="post-metadata">

**Author:** ![njyo](https://sea2.discourse-cdn.com/flex020/user_avatar/community.fibery.io/njyo/32/923_2.png) [@njyo](https://community.fibery.io/u/njyo)\
**Post date:** [June 1, 2023, 9:54am UTC](https://community.fibery.io/t/frq-database-inheritance/4528/3 "2023-06-01T09:54:00Z")

</div>

Hi @Polina_Zenevich!

Interesting, for some reason I didn’t think of it that way, and might actually solve this, if a few gaps are closed:

1. The lookup does not allow me to fill data. So any view only shows the lookup
2. Forms do not allow me to set the lookups either
3. Bonus: If I then can hide the `Person` database ([as outlined here](https://community.fibery.io/t/ability-to-hide-some-databases-from-search-entity-link-by-default/4442/8))

That’s at least based on a first quick test, but I overall like the approach and might see if I rewire a number of things based on your suggestion. 🙏

---

<div class="post-metadata">

**Author:** ![Matt\_Blais](https://sea2.discourse-cdn.com/flex020/user_avatar/community.fibery.io/matt_blais/32/1464_2.png) [@Matt\_Blais](https://community.fibery.io/u/Matt_Blais)\
**Post date:** [June 1, 2023, 3:30pm UTC](https://community.fibery.io/t/frq-database-inheritance/4528/4 "2023-06-01T15:30:21Z")

</div>

> [@njyo](#):
>
> The lookup does not allow me to fill data.

This is the shortcoming of Lookups: they are read-only, and it is not necessarily easy to see how to open the Lookup’s source entity where the value can be edited.

Related:

- ["Joins" - include related entity's fields in Views - #3 by Matt\_Blais](https://community.fibery.io/t/joins-include-related-entitys-fields-in-views/1966/3)
- [Open the source entity of a Lookup field with ALT+click - #3 by Matt\_Blais](https://community.fibery.io/t/open-the-source-entity-of-a-lookup-field-with-alt-click/2957/3)

---

<div class="post-metadata">

**Author:** ![Oshyan](https://sea2.discourse-cdn.com/flex020/user_avatar/community.fibery.io/oshyan/32/11431_2.png) [@Oshyan](https://community.fibery.io/u/Oshyan)\
**Post date:** [June 3, 2023, 6:04pm UTC](https://community.fibery.io/t/frq-database-inheritance/4528/5 "2023-06-03T18:04:34Z")

</div>

I still think the Lookup-based approach is potentially non-ideal and quite limited (even if editing in looked-up entity is added) vs. some kind of “inheritance” system or at least [Individual Layouts for a node, hide fields etc](https://community.fibery.io/t/individual-layouts-for-a-node-hide-fields-etc/995) and/or [Tab Views in Entity Pages](https://community.fibery.io/t/tab-views-in-entity-pages/2931). The newer ability to Hide and Collapse Fields and Relations is helpful to deal with field proliferation but doesn’t address the need for different views of same/related data based on context.

---

<div class="post-metadata">

**Author:** ![YvetteLans](https://sea2.discourse-cdn.com/flex020/user_avatar/community.fibery.io/yvettelans/32/6101_2.png) [@YvetteLans](https://community.fibery.io/u/YvetteLans)\
**Post date:** [June 6, 2023, 5:44pm UTC](https://community.fibery.io/t/frq-database-inheritance/4528/6 "2023-06-06T17:44:56Z")

</div>

> [@njyo](#):
>
> For certain types of databases (i.e. Tasks, People, Organisations, Tools) I would like to have the ability to inherit/extend databases.

Yes, we need this too.

> [@njyo](#):
>
> One massive database with lots of irrelevant fields, which also confuses

That’s our current set-up for contact. Which is really confusing. We have really huge databases (example: our contact database) with a lot of hidden fields (which we only use in automations/formulas). But if a user wants to create a form or want to add a value in a table, they will see all fields. The list is quite insane 😅

 ![image](https://us1.discourse-cdn.com/flex020/uploads/fibery/original/2X/6/67d468a486ea4c13d48acd03b0a81b56dd76fe3b.png)

> [@njyo](#):
>
> Multiple extension databases: One `Person` database and then `Person-Staff`, `Person-Contact`, etc. that maybe automatically connects some entries.

This is our setup in a lot of other databases. Also quite confusing since we need a lot of workarounds to create the overall database/views.

And it’s really limiting the table views since you can only choose 1 database in a table. So I can’t say “Column 1-3 are Database A and column 4-6 are Database B”

> [@njyo](#):
>
> The lookup does not allow me to fill data. So any view only shows the lookup

Exactly, this is also why we can’t use lookups.

> [@njyo](#):
>
> Forms do not allow me to set the lookups either

And automations/buttons + formulas also not.
