微信小程序云函数操作mysql数据库
准备

第一步创建一个nodejs云函数

第二步 按照下面的代码编写通用sql执行云函数
// 云函数入口文件
const cloud = require('wx-server-sdk')
const mysql = require('mysql2/promise')
cloud.init()
// 云函数入口函数
exports.main = async (event, context) => {
let res;
try {
const connection =await mysql.createConnection({
host: process.env.ipaddr,
database: process.env.database,
user: process.env.username,
password: process.env.password,
})
var sql = event.sql;
var params = event.params;
res = await connection.execute(sql,params);
} catch (err) {
console.log("链接错误", err)
return err
}
return {
res,
code:200
}
}
第三步 修改package.json,这个是为了方便云函数云端安装依赖所需
"dependencies": {
"wx-server-sdk": "~2.3.2",
"mysql2":"~2.2.5"
}
第四步上传云函数并云端安装依赖,看下图

第五步 在云控制台增加环境变量,比如涉及到隐私的数据集地址和密码
- 路径:
云函数列表
->定位到目标云函数
->点击版本与配置
->再点击配置
->再点击下方的高级配置
- 注意:数据库要使用公网地址


测试
//加载部门人员
loadGroupUser(depId){
let sql = 'SELECT su.user_id,su.user_name,su.nick_name,su.phonenumber FROM sys_user as su WHERE su.dept_id = ? AND su.del_flag = 0 ';
let params = [depId];
wx.cloud.callFunction({
name:'db-operator',
data:{
sql:sql,
params:params
},
success: res=>{
console.log(res)
},
fail: err =>{
console.log('[云函数] [db-operator] 调用失败',err)
}
})
},
结果如下便是成功


有问题请留言
评论区