For web developers, the database is at the core of web development. You can save almost anything into a database and query or update data inside it, like user information, products or news articles.
Go doesn't provide any database drivers, but it does have a driver interface defined in the
database/sql package. People can develop database drivers based on that interface. In section 5.1, we are going to talk about database driver interface design in Go. In sections 5.2 to 5.4, I will introduce some SQL database drivers to you. In section 5.5, I will present the ORM that I have developed which is based on the
database/sql interface standard. It is compatible with most drivers that have implemented the
database/sql interface, and it makes it easy to access databases idiomatically in Go.
NoSQL has been a hot topic in recent years. More websites are deciding to use NoSQL databases as their main database instead of just for the purpose of caching. I will introduce you to two NoSQL databases, which are MongoDB and Redis, in section 5.6.