C言語DB入門 PartⅠ

「C言語からデータベースを動かす」最初の一歩を、SQLiteでじっくり始めよう。

「C言語は少し分かるけれど、データベースは難しそう」と感じていませんか。PartⅠでは、そんな方でも無理なく進められるように、C言語とSQLiteを使ったデータベースプログラミングを基礎から順番に学んでいきます。

まずは、データベースアプリとはどのようなものなのか、ファイル保存とは何が違うのかを確認します。その後、WindowsにMSYS2 UCRT64、GCC、SQLite、GTK 4、Visual Studio Codeを準備し、実際にプログラムを作れる環境を整えます。

SQLiteとSQLの基本を学んだら、いよいよC言語からデータベースへ接続します。書籍データを題材に、登録・表示・変更・削除というCRUDの基本操作を一つずつ実装。最後には、メニューから操作できるコンソール版の書籍管理アプリを完成させます。

読むだけではなく、実際にコードを書いて動かしながら「C言語とデータベースがどうつながるのか」をしっかり身につけられるPartです。

第1章 C言語でデータベースアプリを作ろう

第1章では、C言語とデータベースを組み合わせると何ができるのかを学びます。プログラムを終了してもデータを残せるデータベースの特徴や、ファイル保存との違いから確認していきましょう。さらに、C言語からデータベースを利用する代表的な方法を整理し、本教材でSQLiteを使用する理由も分かりやすく解説します。最後には、これから作成する書籍管理アプリのイメージと、コンソール版からGUI版へ進んでいく学習ロードマップを確認します。

01 データベースアプリケーションとは02 C言語からデータベースを使う方法
03 SQLiteとは04 初心者にSQLiteがおすすめな理由
05 本教材で作成する書籍管理アプリ06 C言語DB入門の学習ロードマップ

第2章 WindowsにC言語DB開発環境を作ろう

第2章では、これからの実習に必要な開発環境をWindows上に準備します。MSYS2 UCRT64を中心に、C言語をコンパイルするGCC、データベースのSQLite、GUI作成に使用するGTK 4、ソースコードを編集するVisual Studio Codeを順番に整えていきます。それぞれのソフトが何のために必要なのかも確認するので、初めて環境構築を行う方でも安心です。最後には最初のC言語プログラムを作り、「作成→コンパイル→実行」という基本操作を身につけます。

01 今回使用する開発環境02 MSYS2をインストールする
03 GCCをインストールする04 SQLiteをインストールする
05 GTK 4をインストールする06 Visual Studio Codeを準備する
07 C:\c-dbを作成する08 最初のC言語プログラムを作成する

第3章 SQLiteとSQLの基本を学ぼう

第3章では、データベースを操作するために欠かせないSQLiteとSQLの基本を学びます。データベース、テーブル、行、列、主キーといった基本用語を確認したあと、実際に書籍を保存するテーブルを作成します。INSERT、SELECT、UPDATE、DELETEを使ってデータを操作し、SQLによるCRUDを一通り体験しましょう。後半ではSQLiteのC APIを使い、C言語からデータベースを開く方法へ進みます。CプログラムとSQLiteがどのようにつながっているのかを実際に確かめられる章です。

01 データベースの基本を知ろう02 SQLiteデータベースを作成する
03 CREATE TABLEでテーブルを作成する04 INSERTとSELECTを使う
05 UPDATEとDELETEを使う06 C言語からSQLiteを利用する仕組み
07 C言語からデータベースを開く08 SQLiteプログラムをコンパイルして実行する

第4章 コンソール版CRUDアプリを作ろう

第4章では、これまで学んだC言語、SQLite、SQLを組み合わせて、コンソール版の書籍管理アプリを作成します。メニューから書籍の登録、一覧表示、変更、削除を選べるようにし、CRUDの各処理を一つずつプログラムへ組み込んでいきます。また、プリペアドステートメントを利用した安全なSQL実行方法や、空文字、存在しないID、SQLiteのエラーへの対応も学習します。最後には各処理をまとめ、実際に使える1つのデータベースアプリとして完成させます。

01 CRUDとは02 コンソール版書籍管理アプリを設計する
03 書籍を登録する04 書籍を一覧表示する
05 書籍を変更する06 書籍を削除する
07 プリペアドステートメントを使う08 入力エラーとSQLiteのエラーに対応する
09 コンソール版書籍管理アプリを完成させる