3章GraphQLの問い合わせ言語

GraphQLが公開される45年前、当時IBMの社員だったエドガー・F・コッドは「A Relational Model of Data for Large Shared Databanks(大規模共有データバンクのデータ関係モデル)」(http://bit.ly/2Ms7jxn)という短い論文を発表しました(タイトルは長いですね)。この論文は、ある非常に有用な考え方について述べています。データを表(テーブル)の形で保存し、操作するという考え方です。この論文の発表から間もなく、IBMはリレーショナルデータベースを開発しました。そして、データベースを操作するためのクエリ言語として、SEQUEL(Structured English Query Language)が誕生しました。今ではSQLとしてよく知られている言語の原型となったものです。

SQL(Structured Query Language)はデータベースに格納されているデータにアクセスしたり、管理したり、操作したりするのに利用するドメイン固有言語です。SQLによって、私たちは単一のコマンドで多数のデータにアクセスできるようになりました。また、IDだけではなく任意の項目をキーとして使い、欲しいデータにアクセスすることもできます。

SQLで使えるコマンドは非常に簡素で、SELECT、INSERT、UPDATE、DELETEの4つです。SQLを使ってできることはこれだけです。データベース上の複数のテーブルにまたがったデータであっても、単一のSQLコマンドで取得できます。

データに対してSELECT、INSERT、UPDATE、DELETEの4つの操作のみを行うという考え方は、Representational ...

Get 初めてのGraphQL ―Webサービスを作って学ぶ新世代API now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.