Heim >Web-Frontend >js-Tutorial >Grundlegendes Tutorial zum Betrieb der MySQL-Datenbank in Node.js

Grundlegendes Tutorial zum Betrieb der MySQL-Datenbank in Node.js

不言
不言nach vorne
2018-10-29 13:57:392985Durchsuche

Dieser Artikel bietet Ihnen ein grundlegendes Tutorial zum Betrieb der MySQL-Datenbank in Node.js. Ich hoffe, dass er für Freunde hilfreich ist.

Dieser Artikel ist ein grundlegendes Tutorial zur Verwendung des MySQL-NPM-Moduls zum Betrieb der MySQL-Datenbank. Die Installation und Konfiguration von MySQL ist nicht erforderlich. Wenn MySQL nicht auf dem Computer installiert ist. Es wird empfohlen, integrierte Umgebungen wie WAMP und XAMPP zu installieren. Dieser Artikel verwendet auch das leichtgewichtige Node.js-Framework Koa, um ein Webprogramm zu erstellen, um Projektszenarien über Front-End-Browseranfragen zu simulieren. Sie können diesen Artikel problemlos lesen, ohne die Syntax des Koa-Frameworks zu beherrschen.

Initialisieren Sie das Projekt

Erstellen Sie das Projektverzeichnis und verwenden Sie npm init, um das Projekt zu initialisieren. Führen Sie die folgenden Vorgänge aus:

Abhängigkeiten installieren

npm install mysql koa koa-router

Erstellen index.js

// index.js

const Koa = require('koa');
const Router = require('koa-router');
const mysql = require('mysql');

const app = new Koa();
const router = new Router();

const connection = mysql.createConnection({
  host: 'localhost', // 填写你的mysql host
  user: 'root', // 填写你的mysql用户名
  password: '123456' // 填写你的mysql密码
})

connection.connect(err => {
  if(err) throw err;
  console.log('mysql connncted success!');
})

router.get('/', ctx => {
  ctx.body = 'Visit index';
})
app.use(router.routes());

app.listen(3000);

Führen Sie „node index.js“ in der Shell aus. Wenn in der Shell „MySQL-Verbindung erfolgreich“ angezeigt wird, bedeutet dies, dass die MySQL-Datenbankverbindung erfolgreich ist.

Grundlegendes Tutorial zum Betrieb der MySQL-Datenbank in Node.js

Öffnen Sie den Browser und besuchen Sie localhost:3000 Tabellenname Die Projektinitialisierung war erfolgreich.

Grundlegendes Tutorial zum Betrieb der MySQL-Datenbank in Node.js

Datenbankvorgang

Datenbank erstellen

Erstellen Sie beim Zugriff auf /createdb eine MySQLkoa-Datenbank, codieren Sie wie folgt :

router.get('/createdb', ctx => {
  return new Promise(resolve => {
    const sql = `CREATE DATABASE mysqlkoa`;

    connection.query(sql, (err) => {
      if (err) throw err;
      ctx.body = {
        code: 200,
        msg: `create database mysqlkoa success!`
      }
      resolve();
    });
  })
})

Node index.js erneut ausführen und über den Browser auf localhost:3000/createdb zugreifen

<img src="https://img.php.cn//upload/image/332/781/973/1540792367149822.png" title="1540792367149822.png" alt="Grundlegendes Tutorial zum Betrieb der MySQL-Datenbank in Node.js">

Datentabelle erstellen

Der Einfachheit halber verwenden wir beim Herstellen der Verbindung direkt die Datenbank, die wir gerade erstellt haben. Wir müssen das Konfigurationselement „database:mysqlkoa“ in „mysql.createConnection“ hinzufügen.

const connection = mysql.createConnection({
  host: 'localhost',
  user: 'root',
  password: '123456',
  database: 'mysqlkoa' // 添加该列
})

Beim Zugriff auf /createtable erstellen wir eine Datentabelle fe_frame, die zum Speichern der Daten des Front-End-Frames verwendet wird:

router.get('/createtable', ctx => {
  return new Promise(resolve => {
    const sql = `CREATE TABLE fe_frame(
      id INT(11) AUTO_INCREMENT PRIMARY KEY,
      name VARCHAR(255),
      author VARCHAR(255)
    )`;
    connection.query(sql, (err ,results, filelds) => {
      if (err) throw err;
      ctx.body = {
        code: 200,
        msg: `create table of fe_frame success!`
      }
      resolve();
    })
  })
})

Führen Sie node index.js erneut aus und verwenden Sie die Browser für den Zugriff auf localhost :3000/createtable

<img src="https://img.php.cn//upload/image/332/781/973/1540792367149822.png" title="1540792367149822.png" alt="Grundlegendes Tutorial zum Betrieb der MySQL-Datenbank in Node.js">

Daten einfügen

Einzelnes Datenelement einfügen

Beim Zugriff /insert, verwenden Sie So fügen Sie ein einzelnes Datenelement ein:

router.get('/insert', ctx => {
  return new Promise(resolve => {
    const sql = `INSERT INTO fe_frame(name, author)
    VALUES('vue', 'Evan')`;
    connection.query(sql, (err) => {
      if (err) throw err;
      ctx.body = {
        cde: 200,
        msg: `insert data to fe_frame success!`
      }
      resolve();
    })
  })
})

Führen Sie node index.js erneut aus und verwenden Sie den Browser, um auf localhost:3000/insert zuzugreifen

Grundlegendes Tutorial zum Betrieb der MySQL-Datenbank in Node.js

Mehrere Datenelemente einfügen

Wenn Sie auf /insertmulti zugreifen, verwenden Sie zum Einfügen mehrerer Datenelemente:

router.get('/insertmulti', ctx => {
  return new Promise(resolve => {
    const sql = `INSERT INTO fe_frame(name, author)
    VALUES ?`;
    const values = [
      ['React', 'Facebook'],
      ['Angular', 'Google'],
      ['jQuery', 'John Resig']
    ];
    connection.query(sql, [values], (err, result) => {
      if (err) throw err;
      ctx.body = {
        code: 200,
        msg: `insert ${result.affectedRows} data to fe_frame success!`        
      }
      resolve();
    })
  })
})

Node index.js erneut ausführen und verwenden Der Browser greift auf localhost:3000/insertmulti zu.

Grundlegendes Tutorial zum Betrieb der MySQL-Datenbank in Node.js

Verwenden Sie phpMyAdmin für den Zugriff. Sie können sehen, dass die MySQLcoa-Tabelle wie folgt lautet

Grundlegendes Tutorial zum Betrieb der MySQL-Datenbank in Node.js

Daten löschen

Wenn Sie auf /delete zugreifen, löschen Sie die entsprechende Zeile. Wir verwenden den Anforderungsparameternamen, um anzugeben, welcher Frame gelöscht werden soll, und verwenden ctx.query.name, um ihn auf der Serverseite abzurufen. Der Code lautet wie folgt:

router.get('/delete', ctx => {
  return new Promise(resolve => {
    const name = ctx.query.name;
    const sql = `DELETE FROM fe_frame WHERE name = '${name}'`;
    connection.query(sql, (err, result) => {
      if (err) throw err;
      ctx.body = {
        code: 200,
        msg: `delete ${result.affectedRows} data from fe_frame success!`
      };
      resolve();
    })
  })
})

Führen Sie node index.js erneut aus und verwenden Sie ihn der Browser, um auf http://localhost: 3000/delete?name=jQuery zuzugreifen

Grundlegendes Tutorial zum Betrieb der MySQL-Datenbank in Node.js

Daten ändern

Beim Zugriff auf /update Der Autor des aktualisierten Vue-Frameworks heißt Evan You. Der Code lautet wie folgt:

router.get('/update', ctx => {
  return new Promise(resolve => {
    const sql =  `UPDATE fe_frame SET author = 'Evan You' WHERE NAME = 'vue'`;
    connection.query(sql, (err, result) => {
      if (err) throw err;
      ctx.body = {
        code: 200,
        msg: `update ${result.affectedRows} data from fe_frame success!`
      };
      resolve();
    })
  })
})

Führen Sie node index.js erneut aus und verwenden Sie den Browser, um auf http://localhost:3000 zuzugreifen /update

Grundlegendes Tutorial zum Betrieb der MySQL-Datenbank in Node.js

Daten suchen

Beim Zugriff auf /select werden Elemente abgerufen, die die Rahmennamenbedingungen in den Anforderungsparametern erfüllen Der Code lautet wie folgt:

router.get('/select', ctx => {
  return new Promise(resolve => {
    let name = ctx.query.name;
    const sql = `SELECT * FROM fe_frame WHERE name = '${name}'`;
    connection.query(sql, (err, result) => {
      if (err) throw err;
      ctx.body = {
        code: 200,
        data: result
      }
      resolve();
    })
  })
})

Node index.js erneut ausführen und über einen Browser auf http://localhost:3000/select?name=vue zugreifen

Grundlegendes Tutorial zum Betrieb der MySQL-Datenbank in Node.js

Das obige ist der detaillierte Inhalt vonGrundlegendes Tutorial zum Betrieb der MySQL-Datenbank in Node.js. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:segmentfault.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen