[英]How to add parameter in nodejs with mysql
I am studing nodejs with koa2, and now I want to read & write & delete & update
informations in mysql database, I created a file called dbconfig.js
for configure the database informations, and another file called mysql.js
as the book said like following 我STUDING与koa2的NodeJS,现在我想read & write & delete & update
在MySQL数据库的信息,我创建了一个名为dbconfig.js
为配置数据库信息,并呼吁其他文件mysql.js
正如书中所说一样以下
const mysql = require('mysql')
const config = require('./dbconfig')
var pool = mysql.createPool({
host : config.database.HOST,
user : config.database.USERNAME,
password : config.database.PASSWORD,
database : config.database.DATABASE,
port : config.database.PORT
});
let query = function( sql, values ) {
return new Promise(( resolve, reject ) => {
pool.getConnection(function(err, connection) {
if (err) {
resolve( err )
} else {
connection.query(sql, values, ( err, rows) => {
if ( err ) {
reject( err )
} else {
resolve( rows )
}
connection.release()
})
}
})
})
}
let findAUser = function () {
let _sql = `
SELECT * FROM user where id =
`
return query(_sql)
}
let deleteAUser = function () {
let _sql = `
DELETE FROM user where id =
`
return query(_sql)
}
let updateAUser = function () {
let _sql = `
UPDATE user set name = where id =
`
return query(_sql)
}
let addAUser = function () {
let _sql = `
insert into user () value ()
`
return query(_sql)
}
module.exports={
findAUser,
deleteAUser,
updateAUser,
addAUser
}
In app.js
, I call them like this const userModel = require('./mysql');userModel.findAUser()
. 在app.js
,我称它们为const userModel = require('./mysql');userModel.findAUser()
。
But I have no idea to write findAUser
, deleteAUser
, updateAUser
, addAUser
, can you help me? 但是我不知道写findAUser
, deleteAUser
, updateAUser
, addAUser
,您能帮我吗? Many thanks. 非常感谢。
Maybe you should take a look to mysql-json module, which really simplifies basic requests like insert, delete, update, etc... 也许您应该看看mysql-json模块,它确实简化了基本请求,例如插入,删除,更新等。
You also have some exemples to learn how to use. 您还将有一些示例来学习如何使用。
Hope it helps. 希望能帮助到你。
Two things here: 这里有两件事:
query
function, I would put the connection.release()
above the reject/resolve. 在您的query
功能中,我会将connection.release()
置于拒绝/解决上方。 Otherwise it will probably not being called. 否则可能不会被调用。 findAUser
function: 请参见findAUser
函数的示例: So it could look like this: 所以看起来可能像这样:
let query = function( sql, values ) {
return new Promise(( resolve, reject ) => {
pool.getConnection(function(err, connection) {
if (err) {
resolve( err )
} else {
connection.query(sql, values, ( err, rows) => {
connection.release()
if ( err ) {
reject( err )
} else {
resolve( rows )
}
})
}
})
})
}
let findAUser = function (id) {
let _sql = `
SELECT * FROM user where id = ?
`
return query(_sql, [id])
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.