I hear this questions lot of time during presentations and in newsgroups. Many people answer it, “No, Microsoft doesn’t support creation of new tables in CRM Database.” But right way to answer this question is; yes, new tables can be added to Microsoft SQL database but the way to add them is to add entities in CRM Application. Direct tables creation in CRM database is possible but not recommended and supported by Microsoft.
In general terms, an Entity is a table in CRM database or is like a class. Attribute is like column or field of a SQL table or property of a class. When a new custom entity is created in CRM, behind the scene, CRM platform is creating SQL table. A developer don’t needs to interact with table, he only interact with CRM Web services or SQL views.
There are mostly two tables created for each entity. Like for Account entity, there are two tables called AccountBase and AccountExtensionBase. New custom attributes are always added to AccountExtensionBase table. Same is the case for new custom entities. If you add new entity called “Test” with prefix “new” then the tables created in database will be New_testBase and New_testExtensionBase.