What is Doctrine ..?
Doctrine is a Query language.
What is Query language ..?
A language for the specification of procedures for the retrieval (and sometimes also modification) of information from a database.
ex: SQL (structured query language).
We use term “DQL” for the Doctrine Query Language.
There are two types of Doctrine
Doctrine ORM – doctrine for Object Relational Mapper
Doctrine ODM – doctrine for Object Document Mapper
Doctrine ORM
We use Doctrine ORM for the Relational Databases like as MySql. This provide developers with a powerful alternatives to SQL that maintain flexibility without requiring unnecessary code duplication.
Doctrine ODM
We use Doctrine ODM for the Documents Oriented Databases like as MongoDB. This provide transparent persistence for PHP objects
Relational Database (ex: MySql)
RDB (Relational Database) is a database that has a collection of tables of data items. Data in a single table represent a relation. Tables may have additionally defined relationships each other.
Document Oriented Database (ex: MongoDB)
Designed for storing, retrieving and managing document oriented information, also known as semi-structured data. Document Oriented Databases are one of the main categories of so called NoSQL.
{ FirstName: "Jonathan", Address: "15 Wanamassa Point Road", Children: [ {Name: "Michael", Age: 10}, {Name: "Jennifer", Age: 8}, {Name: "Samantha", Age: 5}, {Name: "Elena", Age: 2} ] }