Types of Attributes in ER Model

In a Database Management System (DBMS), an attribute is a property or characteristic of an entity that is used to describe an entity. Essentially, it is a column in a table that holds data values. An entity may contain any number of attributes. One of the attributes is considered as the primary key. In an Entity-Relation model, attributes are represented in an elliptical shape. 

Example: Student has attributes like name, age, roll number, and many more. To uniquely identify the student, we use the primary key as a roll number as it is not repeated. Attributes can also be subdivided into another set of attributes. Attributes help define and organize the data, making it easier to retrieve and manipulate information within the database. In this article, we are going to discuss about different types of attributes in detail.

Types of Attributes

There are different types of attributes as discussed below-

  • Simple Attribute 
  • Composite Attribute 
  • Single-Valued Attribute 
  • Multi-Valued Attribute 
  • Derived Attribute
  • Complex Attribute
  • Stored Attribute
  • Key Attribute 
  • Null Attribute
  • Descriptive Attribute

Let’s discuss each one by one:

1. Simple Attribute

An attribute that cannot be further subdivided into components is a simple attribute. 
Example: The roll number of a student, the ID number of an employee, gender, and many more. 

Simple Attribute

2.Composite Attribute

An attribute that can be split into components is a composite attribute. 

Example: The address can be further split into house number, street number, city, state, country, and pin code, the name can also be split into first name middle name, and last name.

Composite Attribute

3. Single-Valued Attribute

The attribute which takes up only a single value for each entity instance is a single-valued attribute. 

Example: The age of a student, Aadhar card number.

Single-Valued

4. Multi-Valued Attribute

The attribute which takes up more than a single value for each entity instance is a multi-valued attribute. And it is represented by double oval shape.
Example: Phone number of a student: Landline and mobile. 

Multi-valued

5. Stored Attribute

 The stored attribute are those attribute which doesn’t require any type of further update since they are stored in the database.

Example: DOB(Date of birth) is the stored attribute.

Stored-attribute

6. Derived Attribute

An attribute that can be derived from other attributes is derived attributes. And it is represented by dotted oval shape.

Example: Total and average marks of a student, age of an employee that is derived from date of birth. 

Derived-attribute

7. Complex Attribute

Those attributes, which can be formed by the nesting of composite and multi-valued attributes, are called “Complex Attributes“. These attributes are rarely used in DBMS(DataBase Management System). That’s why they are not so popular.

Example: Address because address contain composite value like street, city, state, PIN code and also multivalued because one people has more that one house address.

Complex-attribute

Representation

Complex attributes are the nesting of two or more composite and multi-valued attributes. Therefore, these multi-valued and composite attributes are called ‘Components’ of complex attributes.

These components are grouped between parentheses ‘( )’ and multi-valued attributes between curly braces ‘{ }’, Components are separated by commas ‘, ‘.

For example let us consider a person having multiple phone numbers, emails, and an address.

Here, phone number and email are examples of multi-valued attributes and address is an example of the composite attribute, because it can be divided into house number, street, city, and state.

Complex attributes

Components

Email, Phone number, Address(All are separated by commas and multi-valued components are represented between curly braces).  

Complex Attribute: Address_EmPhone(You can choose any name).

8. Key attribute

Key attributes are those attributes that can uniquely identify the entity in the entity set.

Example: Roll-No is the key attribute because it can uniquely identify the student. 

9. Null Attribute

This attribute can take NULL value when entity does not have value for it.

Example –The ‘Net Banking Active Bin’ attribute gives weather particular customer having net banking facility activated or not activated.

For bank which does not offer facility of net banking in customer table ‘Net Banking Active Bin’ attribute is always null till Net banking facility is not activated as this attribute indicates Bank offers net banking facility or does not offers.

10. Descriptive Attribute

Descriptive attribute give information about the relationship set example given below. Here Start Date is the descriptive attribute of Manages relationship.

Descriptive-Attribute

Conclusion

In an Entity-Relationship (ER) model, attributes are features that describe entities or relationships. They can be simple, composite, derived, multi-valued, or key attributes. Simple attributes are basic, while composite ones are made up of smaller parts. Derived attributes are calculated from other attributes, multi-valued ones can hold multiple values, and key attributes uniquely identify each entity. These attributes help organize and understand data in a database model.

Frequently Asked Questions on Types of Attributes in ER Model-FAQs

Why attributes are used?

Attributes are used to get more information about the entity which will help to store the data in a specific format. Attributes are essential parts of the entity as all entity-related data is stored in the form of attributes only.

What is difference between stored and derived attribute?

Stored attribute does not require any update while derived attribute require update and its value is derived from other attribute. For example stored attribute is D.O.B while age is the example of derived attribute.

Can an entity have zero attributes?

Yes, the entity can have zero attributes but that entity will not carry any information with us resulting in no use of the entity.

What is an attribute in a table?

A column name is the attribute in a table.