前言
創(chuàng)新互聯(lián)是一家集網(wǎng)站建設,陽谷企業(yè)網(wǎng)站建設,陽谷品牌網(wǎng)站建設,網(wǎng)站定制,陽谷網(wǎng)站建設報價,網(wǎng)絡營銷,網(wǎng)絡優(yōu)化,陽谷網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學習、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。小程序云開發(fā)的功能是越來越強大了,現(xiàn)在小程序云開發(fā)可以直接借助云函數(shù)來鏈接mysql數(shù)據(jù),操作mysql數(shù)據(jù)庫了,今天就來給大家講一講如何使用小程序云開發(fā)的云函數(shù)來操作mysql數(shù)據(jù)庫。
首先要明確一點,就是小程序云開發(fā)的云函數(shù)是基于node.js的,所以我們使用node.js的mysql2模塊可以直接來鏈接并操作mysql數(shù)據(jù)庫,所以我們現(xiàn)在要做的就是怎么樣在云函數(shù)里使用mysql2模塊,并且借助這個模塊類庫來實現(xiàn)mysql數(shù)據(jù)庫的鏈接。
老規(guī)矩,先看效果圖
我們這里要做的就是在云函數(shù)里鏈接mysql數(shù)據(jù)庫,并返回鏈接的mysql數(shù)據(jù)庫的版本號。mysql數(shù)據(jù)庫都能成功鏈接了,后面對mysql的增刪改查操作也就是小意思了。所以我們這里先成功的鏈接mysql數(shù)據(jù)庫才是最重要的。
一,創(chuàng)建小程序并引入云開發(fā)
這里我不在做講解,我之前有講過小程序云開發(fā)的初始化創(chuàng)建,也有錄視頻講解,不懂的同學可以移步去看下,云開發(fā)項目的創(chuàng)建視頻
https://edu.csdn.net/course/play/9604/284440
這里有3點需要注意的
1,一定要在app.js里做云開發(fā)環(huán)境的初始化
2,在project.config.json里配置云函數(shù)的目錄
3,一定要用自己注冊的小程序的appid
二,創(chuàng)建云函數(shù),名字就叫mysql吧
在我們的cloud,右鍵創(chuàng)建云函數(shù)
三,安裝mysql2模塊依賴
1,右鍵我們的mysql云函數(shù),點擊在終端中打開
2,在終端中輸入 npm install mysql2
需要你電腦安裝npm,如果沒有安裝,請自行百度,網(wǎng)上很多npm的安裝教程的。
等待我們的mysql2安裝成功
四,編寫mysql云函數(shù)鏈接mysql數(shù)據(jù)庫
完整的代碼給大家貼出來
// 云函數(shù)入口文件 const cloud = require('wx-server-sdk') //引入mysql操作模塊 const mysql = require('mysql2/promise') cloud.init() // 云函數(shù)入口函數(shù) exports.main = async(event, context) => { //鏈接mysql數(shù)據(jù)庫的test庫,這里你可以鏈接你mysql中的任意庫 try { const connection = await mysql.createConnection({ host: "你的服務器ip", database: "操作那個數(shù)據(jù)庫", user: "mysql使用后名", password: "mysql密碼" }) const [rows, fields] = await connection.execute('SELECT version();') return rows; } catch (err) { console.log("鏈接錯誤", err) return err } }
另外有需要云服務器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。