Node.js - MySQL データベースの作成
こんにちは、将来のプログラマーたち!今日は、Node.jsとMySQLの世界に興味深い旅を始めます。あなたの近所の親切なコンピュータサイエンスの先生として、私はNode.jsとMySQLを使ってデータベースを作成するプロセスをガイドします。プログラミングが初めてでも心配しないでください。ステップバイステップに進め、すぐにプロのようにデータベースを作成できるようになるでしょう!
Node.jsとMySQLとは?
本題に入る前に、まずNode.jsとMySQLとは何か簡単に説明します。
- Node.js: これは強力なJavaScriptランタイムで、コンピュータ上でJavaScriptを実行できるようにします。ウェブブラウザだけでなく、です。
- MySQL: これは人気のあるデータベース管理システムで、データを保存し整理するのに役立ちます。
この2つを組み合わせることで、強力なウェブアプリケーションを構築するためのダイナミックなコンビが完成します!
環境の設定
まず第一に、Node.jsとMySQLモジュールがインストールされていることを確認します。まだインストールしていない場合は、公式ウェブサイトからNode.jsをインストールしてください。その後、ターミナルまたはコマンドプロンプトを開き、以下のコマンドを実行します:
npm install mysql
このコマンドは、Node.js用のMySQLモジュールをインストールします。これを使ってMySQLデータベースに接続します。
MySQLに接続
環境が整ったので、MySQLに接続してみましょう。以下は簡単な例です:
const mysql = require('mysql');
const connection = mysql.createConnection({
host: 'localhost',
user: 'your_username',
password: 'your_password'
});
connection.connect((err) => {
if (err) throw err;
console.log('MySQLサーバーに接続しました!');
});
これを分解すると:
- MySQLモジュールをrequireします。
-
mysql.createConnection()
を使って接続を生成し、MySQLサーバーの詳細を提供します。 -
connect()
メソッドを使って接続を確立します。 - エラーが発生した場合はスローします。それ以外の場合は成功メッセージを表示します。
データベースの作成
では、メインのイベントに進みましょう。データベースを作成する基本構文は以下の通りです:
connection.query('CREATE DATABASE mydb', (err, result) => {
if (err) throw err;
console.log('データベースを作成しました');
});
このスニペットは、query()
メソッドを使ってSQLコマンドを実行し、新しいデータベース名'mydb'を作成します。
例:学校用データベースの作成
実際的な例を考えてみましょう。学校のシステムを構築し、生徒やコースの情報を保存するためのデータベースが必要です。
const mysql = require('mysql');
const connection = mysql.createConnection({
host: 'localhost',
user: 'your_username',
password: 'your_password'
});
connection.connect((err) => {
if (err) throw err;
console.log('MySQLサーバーに接続しました!');
connection.query('CREATE DATABASE school_db', (err, result) => {
if (err) throw err;
console.log('学校データベースを作成しました!');
// 新しいデータベースを使用
connection.query('USE school_db', (err, result) => {
if (err) throw err;
console.log('school_dbを使用中');
// テーブルを作成
const createStudentsTable = `
CREATE TABLE students (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100),
age INT,
grade VARCHAR(2)
)
`;
connection.query(createStudentsTable, (err, result) => {
if (err) throw err;
console.log('生徒テーブルを作成しました!');
});
const createCoursesTable = `
CREATE TABLE courses (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100),
instructor VARCHAR(100)
)
`;
connection.query(createCoursesTable, (err, result) => {
if (err) throw err;
console.log('コーステーブルを作成しました!');
});
});
});
});
この例では以下のことを行います:
- MySQLに接続します
- 新しいデータベース'school_db'を作成します
- 新しいデータベースを使用します
- 'students'と'courses'という2つのテーブルを作成します
各ステップではquery()
メソッドを使ってSQLコマンドを実行します。
con.query()メソッド
query()
メソッドは、Node.jsのMySQL操作における主力です。SQLクエリやコマンドを実行するのに使います。以下はその構文の分解です:
connection.query(sqlCommand, [values], callback)
-
sqlCommand
: 実行したいSQLコマンドを含む文字列。 -
values
(オプション): SQLコマンドに挿入する値の配列(SQLインジェクションを防ぐのに役立ちます)。 -
callback
: クエリが完了したときに呼び出される関数。以下の3つのパラメータを受け取ります: -
err
: クエリ中に発生したエラー。 -
result
: クエリの結果。 -
fields
: 返されたフィールドの情報。
以下の表に、query()
メソッドで使用できる一般的なMySQLコマンドの摘要を示します:
コマンド | 説明 | 例 |
---|---|---|
CREATE DATABASE | 新しいデータベースを作成 | CREATE DATABASE mydb |
USE | データベースを選択 | USE mydb |
CREATE TABLE | 新しいテーブルを作成 | CREATE TABLE users (id INT, name VARCHAR(100)) |
INSERT INTO | テーブルに新しいデータを挿入 | INSERT INTO users (id, name) VALUES (1, 'John') |
SELECT | テーブルからデータを取得 | SELECT * FROM users |
UPDATE | テーブルの既存データを更新 | UPDATE users SET name = 'Jane' WHERE id = 1 |
DELETE | テーブルからデータを削除 | DELETE FROM users WHERE id = 1 |
DROP TABLE | テーブルを削除 | DROP TABLE users |
DROP DATABASE | データベースを削除 | DROP DATABASE mydb |
結論
さて、皆さん!Node.jsとMySQLを使ったデータベース作成の基本を旅しました。実践するほどに完璧になりますので、さまざまなコマンドを試してみて、自分でデータベースを作成してみてください。
私の教師生活の中で、最も効果的な学び方は実践することだと気づきました。そこで、簡単な宿題を用意しました:あなたの趣味に合わせたデータベースを作成してみてください。それは料理のレシピのコレクション、見た映画のリスト、ペットの岩の収集品のインベントリなど、天空の限界まで自由に!
すべてのマスター・プログラマーもかつては初心者でした。codingを続け、学び続け、そして最も重要なのは、楽しむことです!次回まで、データベース作成を楽しんでください!
Credits: Image by storyset