评论

微信小程序云开发连接mysql数据库,小程序云函数操作mysql数据库

小程序云开发操作mysql数据库

小程序云开发的功能是越来越强大了,现在小程序云开发可以直接借助云函数来链接mysql数据,操作mysql数据库了,今天就来给大家讲一讲如何使用小程序云开发的云函数来操作mysql数据库。

首先要明确一点,就是小程序云开发的云函数是基于node.js的,所以我们使用node.js的mysql2模块可以直接来链接并操作mysql数据库,所以我们现在要做的就是怎么样在云函数里使用mysql2模块,并且借助这个模块类库来实现mysql数据库的链接。

老规矩,先看效果图


我们这里要做的就是在云函数里链接mysql数据库,并返回链接的mysql数据库的版本号。mysql数据库都能成功链接了,后面对mysql的增删改查操作也就是小意思了。所以我们这里先成功的链接mysql数据库才是最重要的。

一,创建小程序并引入云开发

这里我不在做讲解,我之前有讲过小程序云开发的初始化创建,也有录视频讲解,不懂的同学可以移步去看下,云开发项目的创建视频
https://edu.csdn.net/course/play/9604/284440

这里有3点需要注意的

1,一定要在app.js里做云开发环境的初始化

2,在project.config.json里配置云函数的目录

3,一定要用自己注册的小程序的appid

二,创建云函数,名字就叫mysql吧。

在我们的cloud,右键创建云函数

三,安装mysql2模块依赖

1,右键我们的mysql云函数,点击在终端中打开

2,在终端中输入 npm install mysql2

需要你电脑安装npm,如果没有安装,请自行百度,网上很多npm的安装教程的。

等待我们的mysql2安装成功

四,编写mysql云函数链接mysql数据库


完整的代码给大家贴出来

// 云函数入口文件
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 替换成你自己的。

五,上传并部署云函数


部署成功

这里有一点需要注意,就是你不能用云函数链接你本地mysql数据库,因为上传云函数以后,是上传到里微信服务器,没有办法调用到你本地mysql到,除非你设置下本地mysql可以被外界访问,或者使用你自己服务器上的mysql数据库。

这样就可以成功的使用微信小程序链接我们的mysql数据库了。

到这里我们点用自己定义的mysql云函数,就可以成功的链接我们的mysql数据库了。

是不是很简单。
更多关于云开发的知识,可以翻看我之前的文章,也可以看我录制的视频讲解

视频讲解

https://edu.csdn.net/course/detail/9604

有任何关于小程序的问题都可以加石头哥微信2501902696(备注小程序)

我们下一节给大家讲解使用小程序云开发实现邮件的发送功能。敬请期待。

最后一次编辑于  08-03  
点赞 2
收藏
评论

8 个评论

  • 罗梅光
    罗梅光
    10-23

    视频感觉没有讲如何操作sql数据库,讲的是微信提供的云数据库吧?

    10-23
    赞同 1
    回复 1
    • 编程小石头
      编程小石头
      10-25
      云开发用的不是mysql。后面我会录制完整的讲解视频
      10-25
      回复
  • 罗梅光
    罗梅光
    10-11

    收藏下。

    10-11
    赞同 1
    回复 2
    • 编程小石头
      编程小石头
      10-25
      谢谢
      10-25
      回复
    • 编程小石头
      编程小石头
      10-25
      谢谢
      10-25
      回复
  • 小石头
    小石头
    08-18

    请问得到的数据如何显示在模拟器中呢

    08-18
    赞同 1
    回复 2
    • 编程小石头
      编程小石头
      08-19
      用数据绑定 就可以显示出来了,你都可以显示在控制台了,再显示到模拟器页面很简单的,你看下官方数据绑定那块的文档。
      08-19
      回复
    • 小石头
      小石头
      08-20回复编程小石头
      pages里面的代码能给下嘛,怎么能让得到的信息显示在控制台呢?
      08-20
      回复
  • 谦谦君子
    谦谦君子
    08-04

    把属于自己的mysql数据库密码暴露在腾讯云函数里,有没有安全问题?

    08-04
    赞同 1
    回复 3
    • 编程小石头
      编程小石头
      08-05
      放在云函数里没事的,或者你单独开一个mysql数据库,专门服务于小程序的就行了
      08-05
      回复
    • June
      June
      08-08回复编程小石头
      别人爬了你的小程序源码,不顺带拿了你mysql的账号,密码,服务器ip了吗
      08-08
      回复
    • 编程小石头
      编程小石头
      08-08
      可以设置密文。
      08-08
      回复
  • Gͧoͧcͧcͧ
    Gͧoͧcͧcͧ
    10-24

    如果用云函数又用mysql, 岂不是要交双份钱

    10-24
    赞同
    回复
  • Gͧoͧcͧcͧ
    Gͧoͧcͧcͧ
    10-24

    学习中的小白, 请教下楼主哈, 小程序提供了云函数 , 然后你也有mysql, 我的理解是要么你用云函数链接微信的数据库, 要么直接链接mysql不就好了?为什么要通过云函数链接你的mysql?

    10-24
    赞同
    回复 1
    • 编程小石头
      编程小石头
      10-25
      只是证明小程序云开发可以链接mysql而已,正常工作中我都是用java或者php链接mysql的
      10-25
      回复
  • 🎃Minerva
    🎃Minerva
    10-12

    请问这种方式连接本地mysql数据库,该ip需要备案吗?

    10-12
    赞同
    回复 1
    • 编程小石头
      编程小石头
      10-25
      需要是公网IP
      10-25
      回复
  • 不如买瓶雪碧漱漱口
    不如买瓶雪碧漱漱口
    08-15

    connect EHOSTUNREACH  请问这个错误是咋回事

    08-15
    赞同
    回复