小程序云开发的功能是越来越强大了,现在小程序云开发可以直接借助云函数来链接mysql数据,操作mysql数据库了,今天就来给大家讲一讲如何使用小程序云开发的云函数来操作mysql数据库。
首先要明确一点,就是小程序云开发的云函数是基于node.js的,所以我们使用node.js的mysql2模块可以直接来链接并操作mysql数据库,所以我们现在要做的就是怎么样在云函数里使用mysql2模块,并且借助这个模块类库来实现mysql数据库的链接。
老规矩,先看效果图
![f605ba3a6df35837e9f59b3b1cfa04e4.png](https://i-blog.csdnimg.cn/blog_migrate/1b2a20d2c2535977ba2271b214550658.jpeg)
我们这里要做的就是在云函数里链接mysql数据库,并返回链接的mysql数据库的版本号。mysql数据库都能成功链接了,后面对mysql的增删改查操作也就是小意思了。所以我们这里先成功的链接mysql数据库才是最重要的。
一,创建小程序并引入云开发
这里我不在做讲解,我之前有讲过小程序云开发的初始化创建,也有录视频讲解,不懂的同学可以移步去看下,云开发项目的创建视频
https://edu.csdn.net/course/play/9604/284440
这里有3点需要注意的
1,一定要在app.js里做云开发环境的初始化
![404ef5f4fe1b6ee5a7be5c333a0f6fc3.png](https://i-blog.csdnimg.cn/blog_migrate/b16a6709176a80ee821eb05bde8fdfaf.png)
2,在project.config.json里配置云函数的目录
![3c67ce1428d81516223837b595799cb1.png](https://i-blog.csdnimg.cn/blog_migrate/1fa07e8c514dec9142c1e19b7bf0b0a5.png)
3,一定要用自己注册的小程序的appid
![95b513450e70baffb2dee0edc776541d.png](https://i-blog.csdnimg.cn/blog_migrate/14d303f46c0ce324ce4815a8691a8e1f.png)
二,创建云函数,名字就叫mysql吧。
在我们的cloud,右键创建云函数
![d2e223b4414c0a506c183562b473f3d7.png](https://i-blog.csdnimg.cn/blog_migrate/6147c6a26d0b57c8fccb35b510ddf112.png)
三,安装mysql2模块依赖
1,右键我们的mysql云函数,点击在终端中打开
![f854d25020bf0faf43fb2163d7e6b174.png](https://i-blog.csdnimg.cn/blog_migrate/c7216f7c4e611c7f7f37e12a51d544d8.jpeg)
2,在终端中输入 npm install mysql2
![8a4e4638a8ac2056a5f5f021c67bab3d.png](https://i-blog.csdnimg.cn/blog_migrate/0868ab3a4cd81c1262b491395d5902b7.jpeg)
需要你电脑安装npm,如果没有安装,请自行百度,网上很多npm的安装教程的。
![d1ea65a260415da5d1c6de6f86c20f5d.png](https://i-blog.csdnimg.cn/blog_migrate/91aec3b6fdae6ece106c639ab9233882.png)
等待我们的mysql2安装成功
四,编写mysql云函数链接mysql数据库
![48a9196086d7ef630e10784c8f26afb8.png](https://i-blog.csdnimg.cn/blog_migrate/e74ae602f35875ef0e9967246715c16e.jpeg)
完整的代码给大家贴出来
// 云函数入口文件
const cloud = require('wx-server-sdk')
//引入mysql操作模块
const mysql = require('mysql2/promise')
cloud.init()
// 云函数入口函数
exports.main = async(event, context) => {
//链接mysql数据库的test库,这里你可以链接你mysql中的任意库
try {
const connection = await mysql.createConnection({
host: "你的服务器ip",
database: "操作那个数据库",
user: "mysql用户名",
password: "mysql密码"
})
const [rows, fields] = await connection.execute('SELECT version();')
return rows;
} catch (err) {
console.log("链接错误", err)
return err
}
}
记得把上面的host,database,user,password 替换成你自己的。
五,上传并部署云函数
![11d859bf270aac787920869d3b670822.png](https://i-blog.csdnimg.cn/blog_migrate/67a9b9546c6df269805b9a3fe1d386b3.jpeg)
部署成功
![7e1af5ae71234c1bb08d5d897b3de141.png](https://i-blog.csdnimg.cn/blog_migrate/0bd4b3de58ae76fc33348daa0a6480ee.png)
这里有一点需要注意,就是你不能用云函数链接你本地mysql数据库,因为上传云函数以后,是上传到里微信服务器,没有办法调用到你本地mysql到,除非你设置下本地mysql可以被外界访问,或者使用你自己服务器上的mysql数据库。
![6382a5b2972b83b67a853e81fae08e21.png](https://i-blog.csdnimg.cn/blog_migrate/c4db0ecbb7435cb45938be0040f918e9.jpeg)
这样就可以成功的使用微信小程序链接我们的mysql数据库了。
到这里我们点用自己定义的mysql云函数,就可以成功的链接我们的mysql数据库了。
![f605ba3a6df35837e9f59b3b1cfa04e4.png](https://i-blog.csdnimg.cn/blog_migrate/1b2a20d2c2535977ba2271b214550658.jpeg)
是不是很简单。
更多关于云开发的知识,可以翻看我之前的文章,也可以看我录制的视频讲解
视频讲解
https://edu.csdn.net/course/detail/9604
有任何关于小程序的问题都可以加石头哥微信2501902696(备注小程序)
我们下一节给大家讲解使用小程序云开发实现邮件的发送功能。敬请期待。