difference between Base Table and Core table

arpitt
Tera Expert

What is the difference between Base Table and Core table ?

30 REPLIES 30

ProbirDas
Tera Expert

Base tables are more of like parent table from which other tables are extended.



In ServiceNow, task and cmdb_ci are considered the core tables. This might be because most of the applications use these tables. If you consider incident, change, problem etc; all these are extended from the task table.


Hi Probir,



Can you list down some base and core tables as your above answer is a bit confusing.



Thanks


sanjeev28 k
Giga Expert

Hi,




Core tables are task,cmdb_ci,sys_* & cmn_*




Task [task] is one of the core tables provided with the base system. It provides a series of standard fields used on each of the tables that extend it, such as the Incident [incident] and Problem [problem] tables.In addition, any table which extends task can take advantage of task-specific functionality for driving tasks.  


Like


Approvals


Assignments


Service Levels


Inactivity Monitors


Workflow




For example: If we will not extend any table from task table then we can't configure the task activity in workflow for it.




Base tables are those tables which are extended, but itself is not an extended table.


Dave Smith1
ServiceNow Employee
ServiceNow Employee

I'll have to admit I'm also unclear the difference between the two. As far as I understand:


  • a base table (also called a base class) is one with no parents. [task], therefore, is a base table.
  • a child table (also called a child class) is one that extends another table:
    • [cmdb_ci_hardware] is a child of [cmdb_ci] because it extends [cmdb_ci]
    • [cmdb_ci] is the parent of [cmdb_ci_hardware]
  • [cmdb_ci_hardware] cannot be a base table since - by definition - a child table always has a parent
  • [cmdb_ci] is not a base table since it extends [cmdb] - which has no parents, so is therefore a base table.


If the definition of a core table is "a table provided with the base system":


  • does that make [incident] a core table but not a base table?
  • is [u_money], a custom table that doesn't extend anything, a base table but not a core table?


Where Sanjeev says: "Core tables are task,cmdb_ci,sys_* & cmn_*" - are these the only core tables? are amn_* core tables also?