What is the Difference between Strong and Weak Entity in DBMS?
An entity in DBMS (Database Management System) is a real-world object that has certain properties called attributes in DBMS that define the nature of the entity. For example, a person is an entity that has properties like name, age, gender, etc. Entities are distinguishable, i.e., each entity in a pair of entities has a property that makes one entity different from the other entity. A strong entity is independent i.e. its existence does not depend on another entity whereas a weak entity is an entity whose existence depends on another entity.
Strong Entity
A strong entity in the schema is independent of all other entities. There will always be a primary key for a strong entity. A strong entity set is a set that is made up of many strong entities.
Representation:
- A single rectangle is used to represent strong entities.
- A single diamond is used to represent the relationship between two strong entities.
Example:
In the above image, we have two strong entities namely Employee and Department hence they are represented using a single rectangle. The relationship between them is works in i.e. it gives information about an employee working in a particular department hence it is represented using a single diamond. In the above image, if we remove the relationship between the two entities then also the two entities will exist i.e. Employee as well as Department will exist since they both are independent of each other, this explains the independent nature of strong entities.
Weak Entity
A weak entity in DBMS is an entity whose existence depends on other strong entities and it does not have a primary key of its own.
Representation:
- A double rectangle is used to represent weak entities.
- A double diamond is used to represent the relationship between two weak entities.
Example: Let's say a company stores information of dependents i.e. parents, children, etc. of an employee then dependents are a weak entity because if an employee does not exist then dependents also do not exist.
Difference between Strong and Weak Entity in DBMS
S.No | Property | Strong Entity | Weak Enity |
---|---|---|---|
1. | Key | It has a primary key. | It does have a primary key of its own, it has a foreign key referencing the primary of the strong entity in which it is in a relationship. |
2. | Dependency | It is independent i.e. its existence does not depend on other entities. | Its existence depends on other strong entities. |
3. | Representation | It is represented using a single rectangle. | It is represented using a double rectangle. |
4. | Relationship representation | A single diamond is used to represent the relationship between two strong entities. | A double diamond is used to represent the relationship between two weak entities. |
5. | Participation | It may or may not participate in a relationship between entities. | It always participates in the relationship between entities since its existence is dependent on other strong entities and it always has total participation. |
6. | Example | Consider a case of a company, their employee and department are examples of strong entities. | In the same company, the dependents of an employee are an example of a weak entity. |
Conclusion
- An entity in DBMS (Database management System) is a real-world thing or a real-world object that is distinguishable from other objects in the real world. For example, a person is an entity that has properties like name, age, gender, etc.
- A strong entity in the schema is independent of all other entities.
- A weak entity is an entity whose existence depends on another strong entity
- A strong entity is represented using a single rectangle whereas a weak entity uses a double rectangle.
- Entity relationship between two strong entities is represented using a single diamond whereas the entity relationship between two weak entities is represented using a double diamond.
Read More:
- [DBMS Relationship](https://www.scaler.com/topics/types-of-relationship-in-dbms