Types of Attributes in ER Model
In DBMS, an attribute is a 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.
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
Attributes define the properties of entities in an ER model, and understanding their types is essential for database design. To explore attributes and their applications further, the GATE CS Course offers practical exercises on ER modeling
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.

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.

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.

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.

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.

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.

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.

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.

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.
