Node.js MySQL Selecteren uit


Kiezen uit een tabel

Gebruik de instructie "SELECT" om gegevens uit een tabel in MySQL te selecteren.

Voorbeeld

Selecteer alle records uit de tabel "klanten" en geef het resultaatobject weer:

var mysql = require('mysql');

var con = mysql.createConnection({
  host: "localhost",
  user: "yourusername",
  password: "yourpassword",
  database: "mydb"
});

con.connect(function(err) {
  if (err) throw err;
  con.query("SELECT * FROM customers", function (err, result, fields) {
    if (err) throw err;
    console.log(result);
  });
});

SELECT * geeft alle kolommen terug

Sla de bovenstaande code op in een bestand met de naam "demo_db_select.js" en voer het bestand uit:

Voer "demo_db_select.js" uit

C:\Users\Your Name>node demo_db_select.js

Wat je dit resultaat geeft:

[
  { id: 1, name: 'John', address: 'Highway 71'},
  { id: 2, name: 'Peter', address: 'Lowstreet 4'},
  { id: 3, name: 'Amy', address: 'Apple st 652'},
  { id: 4, name: 'Hannah', address: 'Mountain 21'},
  { id: 5, name: 'Michael', address: 'Valley 345'},
  { id: 6, name: 'Sandy', address: 'Ocean blvd 2'},
  { id: 7, name: 'Betty', address: 'Green Grass 1'},
  { id: 8, name: 'Richard', address: 'Sky st 331'},
  { id: 9, name: 'Susan', address: 'One way 98'},
  { id: 10, name: 'Vicky', address: 'Yellow Garden 2'},
  { id: 11, name: 'Ben', address: 'Park Lane 38'},
  { id: 12, name: 'William', address: 'Central st 954'},
  { id: 13, name: 'Chuck', address: 'Main Road 989'},
  { id: 14, name: 'Viola', address: 'Sideway 1633'}
]


Kolommen selecteren

Om slechts enkele kolommen in een tabel te selecteren, gebruikt u de instructie "SELECT" gevolgd door de kolomnaam.

Voorbeeld

Selecteer naam en adres uit de tabel "klanten" en toon het retourobject:

var mysql = require('mysql');

var con = mysql.createConnection({
  host: "localhost",
  user: "yourusername",
  password: "yourpassword",
  database: "mydb"
});

con.connect(function(err) {
  if (err) throw err;
  con.query("SELECT name, address FROM customers", function (err, result, fields) {
    if (err) throw err;
    console.log(result);
  });
});

Sla de bovenstaande code op in een bestand met de naam "demo_db_select2.js" en voer het bestand uit:

Voer "demo_db_select2.js" uit

C:\Users\Your Name>node demo_db_select2.js

Wat je dit resultaat geeft:

[
  { name: 'John', address: 'Highway 71'},
  { name: 'Peter', address: 'Lowstreet 4'},
  { name: 'Amy', address: 'Apple st 652'},
  { name: 'Hannah', address: 'Mountain 21'},
  { name: 'Michael', address: 'Valley 345'},
  { name: 'Sandy', address: 'Ocean blvd 2'},
  { name: 'Betty', address: 'Green Grass 1'},
  { name: 'Richard', address: 'Sky st 331'},
  { name: 'Susan', address: 'One way 98'},
  { name: 'Vicky', address: 'Yellow Garden 2'},
  { name: 'Ben', address: 'Park Lane 38'},
  { name: 'William', address: 'Central st 954'},
  { name: 'Chuck', address: 'Main Road 989'},
  { name: 'Viola', address: 'Sideway 1633'}
]

Het resultaatobject

Zoals u kunt zien aan het resultaat van het bovenstaande voorbeeld, is het resultaatobject een array die elke rij als een object bevat.

Om bijvoorbeeld het adres van het derde record te retourneren, raadpleegt u de adreseigenschap van het derde array-object:

Voorbeeld

Retourneer het adres van het derde record:

console.log(result[2].address);

Wat dit resultaat oplevert:

Apple st 652

Het Velden-object

De derde parameter van de callback-functie is een array met informatie over elk veld in het resultaat.

Voorbeeld

Selecteer alle records uit de tabel "klanten" en geef het veldenobject weer :

var mysql = require('mysql');

var con = mysql.createConnection({
  host: "localhost",
  user: "yourusername",
  password: "yourpassword",
  database: "mydb"
});

con.connect(function(err) {
  if (err) throw err;
  con.query("SELECT name, address FROM customers", function (err, result, fields) {
    if (err) throw err;
    console.log(fields);
  });
});

Sla de bovenstaande code op in een bestand met de naam "demo_db_select_fields.js" en voer het bestand uit:

Voer "demo_db_select_fields.js" uit

C:\Users\Your Name>node demo_db_select_fields.js

Wat je dit resultaat geeft:

[
  {
    catalog: 'def',
    db: 'mydb',
    table: 'customers',
    orgTable: 'customers',
    name: 'name',
    orgName: 'name',
    charsetNr: 33,
    length: 765,
    type: 253,
    flags: 0,
    decimals: 0,
    default: undefined,
    zeroFill: false,
    protocol41: true
  },
  {
    catalog: 'def',
    db: 'mydb',
    table: 'customers',
    orgTable: 'customers',
    name: 'address',
    orgName: 'address',
    charsetNr: 33,
    length: 765,
    type: 253,
    flags: 0,
    decimals: 0,
    default: undefined,
    zeroFill: false,
    protocol41: true
  }
]

Zoals u kunt zien aan de hand van het resultaat van het bovenstaande voorbeeld, is het field-object een array met informatie over elk veld als een object.

Om bijvoorbeeld de naam van het tweede veld te retourneren, hoeft u alleen maar naar de naameigenschap van het tweede array-item te verwijzen:

Voorbeeld

Retourneer de naam van het tweede veld:

console.log(fields[1].name);

Wat dit resultaat oplevert:

address