質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

88.92%

progateのweb開発パス(Node.js)の環境構築で止まっています。

受付中

回答 1

投稿 編集

  • 評価
  • クリップ 1
  • VIEW 264

gengen21

score 8

環境構築の「Node.jsアプリケーションとMySQLを接続しよう!」の部分で躓いています。
躓いている部分は最後にコマンドでデータを表示するところです。

![イメージ説明]
実際このように表示したいのですが、エラーで表示できなくなっています。

実際にやったことは以下の通りです。
os:windows10
mysql var:57
コマンドを管理者実行

1.mysqlパッケージをインストール

イメージ説明

2.コマンドでlist_appのデータベースを作成

mysql>  CREATE DATABASE list_app;
Query OK, 1 row affected (0.00 sec)

mysql> USE list_app];
ERROR 1049 (42000): Unknown database 'list_app]'
mysql> use list_app;
Database changed
mysql> SHOW tables;
Empty set (0.00 sec)

mysql> CREATE TABLE users (id INT AUTO_INCREMENT, name TEXT, PRIMARY KEY (id)) DEFAULT CHARSET=utf8;
Query OK, 0 rows affected (0.01 sec)

mysql> SHOW tables;
+--------------------+
| Tables_in_list_app |
+--------------------+
| users              |
+--------------------+
1 row in set (0.00 sec)

mysql> DESCRIBE users;
+-------+---------+------+-----+---------+----------------+
| Field | Type    | Null | Key | Default | Extra          |
+-------+---------+------+-----+---------+----------------+
| id    | int(11) | NO   | PRI | NULL    | auto_increment |
| name  | text    | YES  |     | NULL    |                |
+-------+---------+------+-----+---------+----------------+
2 rows in set (0.00 sec)

mysql> SELECT * FROM users;
Empty set (0.00 sec)

mysql> INSERT INTO users(name) VALUES ('ninjawanko');
Query OK, 1 row affected (0.00 sec)

mysql> SELECT * FROM users;
+----+------------+
| id | name       |
+----+------------+
|  1 | ninjawanko |
+----+------------+
1 row in set (0.00 sec)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| list_app           |
| mysql              |
| performance_schema |
| sakila             |
| sys                |
| test               |
| world              |
+--------------------+
8 rows in set (0.00 sec)

mysql> use list_app;
Database changed
mysql> show tables;
+--------------------+
| Tables_in_list_app |
+--------------------+
| users              |
+--------------------+
1 row in set (0.00 sec)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| list_app           |
| mysql              |
| performance_schema |
| sakila             |
| sys                |
| test               |
| world              |
+--------------------+
8 rows in set (0.00 sec)

mysql> mysql>  CREATE DATABASE list_app;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'mysql>  CREATE DATABASE list_app' at line 1
mysql> Query OK, 1 row affected (0.00 sec)

use list_app;
create table product (id int, name varchar(10), col varchar(10));

3.ATOMでmysqlの設定情報を記述

const express = require('express');
const mysql = require('mysql');

const app = express();

const connection = mysql.createConnection({
  host: 'localhost',
  user: 'root',
  password: '[*****]',
  database: 'list_app'
});

connection.connect((err) => {
  if (err) {
    console.log('error connecting: ' + err.stack);
    return;
  }
  console.log('success');
});

app.get('/', (req, res) => {
  connection.query(
    'SELECT * FROM users',
    (error, results) => {
      console.log(results);
      res.render('hello.ejs');
    }
  );
});

app.listen(3000);


4.localhost:3000/にアクセスしたときに表示するビューファイルをviews/hello.ejsに作成

<h1>Hello World</h1>

5.コマンドでnode app.jsを管理者実行

C:\Windows\system32>node app.js
internal/modules/cjs/loader.js:968
  throw err;
  ^

Error: Cannot find module 'C:\Windows\system32\app.js'
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:965:15)
    at Function.Module._load (internal/modules/cjs/loader.js:841:27)
    at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:71:12)
    at internal/main/run_main_module.js:17:47 {
  code: 'MODULE_NOT_FOUND',
  requireStack: []
}

上のようなエラーが起こった。

web開発パスのNode.jsの最後の部分なので
これができたら本当に幸いです。
何卒ご協力をよろしくお願いします。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 1

+4

C:\Windows\system32>node app.js

なぜこんなところで実行しているのですか?

あなたが用意したnodeアプリは以下のフォルダでは?
C:¥Users¥Progate¥list-app

イメージ説明

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2020/09/19 16:17

    それをやりましたが、またエラーが表示されました。
    できたらやり方をもう少し精細にご教授させていただけないでしょうか?

    キャンセル

  • 2020/09/22 15:41 編集

    mysql2を試したらできましたが、”success”と表示されただけでした。
    データベースがなぜ出力されないかだれか知りませんか?

    キャンセル

  • 2020/09/22 20:26

    補足ですが、最初の質問の
    コマンドでlist_appデータベースを作成する部分を編集しておきました。

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 88.92%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る