简体   繁体   English

nodejs> Express> SQL

[英]nodejs > Express > SQL

I am trying to INSERT INTO my SQL Server DB Table using nodejs (Express). 我正在尝试使用nodejs(Express)插入我的SQL Server数据库表。

Everything I have tried will not work. 我尝试过的所有方法均无效。

In my app.js I have the below which executes correctly and connects, however where i am struggling is, how do i get data inserted in to my DB table. 在我的app.js中,我具有以下内容,它们可以正确执行并连接,但是,我苦苦挣扎的地方是如何将数据插入到我的数据库表中。

app.js app.js

var Connection = require('tedious').Connection;
var Request = require('tedious').Request;
var TYPES = require('tedious').TYPES;
var async = require('async');
var express = require('express');
var path = require('path');
var favicon = require('serve-favicon');
var logger = require('morgan');
var cookieParser = require('cookie-parser');
var bodyParser = require('body-parser');
var mysql = require('mysql');
var sql = require('mssql');
var index = require('./routes/index');
var users = require('./routes/users');
var homepage = require('./routes/homepage');
var app = express();

////// DB CONF //////
var config = {
  userName: 'xxxxxxxxxxxxxx',
  password: 'xxxxxxx',
  server: 'xxxxxxxxxxx',
  options: {
      database: 'xxxxxxxxxxx'
  }
}
var connection = new Connection(config);
connection.on('connect', function(err) {
  if (err) {
    console.log(err);
  } else {
    console.log('Connected');
  }
});

You already included mysql library. 您已经包含了mysql库。 now you have to create mysql connection. 现在您必须创建mysql连接。 Like: 喜欢:

const writeDB = mysql.createConnection({
    host: 'localhost',
    user: 'root',
    password: '********',
    database: 'dbName'
});

after creating connection run query like: 创建连接后,运行查询如下:

        let squerySet = "INSERT INTO weekDays (`id`, `date`, `day`) values ('1','2018-03-03', 'Monday');"
        writeDB.query(squerySet,(err, result) => {
            if(err){
                return reject(err)
            }
            else {
                resolve("carrierbillreceipt Table COPY DONE .....")
            }
        })

Because writeDB.query will return a promise then you have to handle this by creating this in promise. 因为writeDB.query将返回一个writeDB.query所以您必须通过在writeDB.query创建它来处理它。 Like: 喜欢:

 const insertDays = () => {
    return new Promise((resolve, reject) => {
        let squerySet = "INSERT INTO weekDays (`id`, `date`, `day`) values ('1','2018-03-03', 'Monday');"
        writeDB.query(squerySet,(err, result) => {
            if(err){
                return reject(err)
            }
            else {
                resolve("insertDays Insert DONE .....")
            }
        })
    })
}

you can also insert an JSON object. 您还可以插入JSON对象。 Like: 喜欢:

let data = { "id": '1', "date":'2018-03-03', "day": 'Monday'}
writeDB.query(`INSERT INTO weekDays SET ?;`,[data],(err, result) => {
   if(err){
       return reject(err)
   }
   else {
       resolve("insertDays Insert DONE .....")
   }
})

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM