
C言語+MySQL入門 PartⅠ
MySQLと開発環境を理解しよう
「C言語から、本格的なデータベースへつないでみよう。」
C言語でデータベースを扱えるようになると、作れるアプリの世界がぐっと広がります。PartⅠでは、MySQLの基本的な仕組みから、Windowsでの開発環境づくり、そしてC言語からMySQL Serverへ接続するところまでを、順番に学んでいきます。SQLiteとの違いも比較しながら進めるので、「データベースサーバーって難しそう」と感じている方でも大丈夫です。MSYS2 UCRT64、GCC、MySQL、Connector/Cなど、最初は聞き慣れない道具も一つずつ役割を確認します。最後には、自分で書いたCプログラムからMySQLへ接続できるようになります。本格的なデータベースアプリ開発への最初の一歩を、ここから踏み出してみましょう。
第1章 C言語+MySQLアプリをはじめよう
この章では、これから作る在庫管理アプリの全体像を見ながら、C言語とMySQLがどのように協力して動くのかを学びます。SQLiteとの違いや、クライアント/サーバー型データベースの仕組み、Connector/Cの役割などをやさしく整理します。まだプログラムは作りません。まずは16章を通して何を学び、最終的にどんなアプリが完成するのかを確認し、これからの学習の道筋をつかみましょう。
| 01 C言語からデータベースを使う | 02 MySQLとは |
| 03 SQLiteとMySQLの違い | 04 クライアント/サーバー型DBとは |
| 05 C言語からMySQLを利用する仕組み | 06 接続に必要な情報を知る |
| 07 今回作成する在庫管理アプリ | 08 コンソール版からGUI版へ進む |
| 09 学習ロードマップ |
第2章 Windowsに開発環境を作ろう
C言語+MySQLアプリを作るための開発環境をWindowsに準備します。MSYS2 UCRT64、GCC、MySQL Server、MariaDB Connector/C、GTK 4、VS Codeを順番にそろえ、それぞれが何を担当するのかも確認します。最後はhello.cをコンパイルして実行し、ソースコードを書いてから実行するまでの基本的な流れを体験します。今後の学習で使う章ごとの作業フォルダも、この章でまとめて準備します。
第3章 MySQLの基本を理解しよう
この章ではMySQLクライアントを使い、在庫管理アプリで利用するデータベースを作ります。inventory_dbを作成し、商品を管理するproductsと在庫の動きを記録するstock_historyを準備します。主キーや外部キーを確認しながら、INSERT、SELECT、UPDATE、DELETEも実際に実行します。さらに、次章からCプログラムが使用する学習用ユーザーを作成し、MySQLへ安全に接続する準備を整えます。
| 01 MySQL Serverの働き | 02 MySQLへログインする |
| 03 データベースを作成する | 04 テーブルと主キーを復習する |
| 05 商品テーブルを作成する | 06 在庫履歴テーブルを作成する |
| 07 商品と履歴を関連付ける | 08 商品を登録・表示する |
| 09 商品を変更・削除する | 10 学習用の接続ユーザーを作る |
| 11 接続ユーザーの権限を確認する | 12 SQLファイルを保存する |
第4章 C言語からMySQLへ接続しよう
いよいよC言語からMySQL Serverへ接続します。mysql.h、MYSQL、mysql_init()、mysql_real_connect()など、MySQL C APIの基本的な型や関数を一つずつ確認します。接続に成功した場合だけでなく、ユーザー名やパスワードを間違えた場合のエラー表示や、接続後の切断処理も扱います。最後には、Connector/Cの設定をpkg-configから取得してビルドし、自分のCプログラムからMySQLへ接続できるようになります。








