一、配置mysql 数据库连接参数

  打开 server下面的config.js

  user  默认都是 'root'

  db     为连接是数据库名

  pass  默认为小程序APPID

  

  注意这里有个坑:host开发环境下要填localhost,不要填分配给你的域名,我就手贱的修改了这里,结果找了1个小时才找到问题原因

 

二、Hello World

  先说一下文件结构

    server>controllers 文件夹下面放置的都是接口文件

    server>routes 下面的 index.js 为接口路由

 

  1.在controllers 下建立一个demo.js 的文件 输入下面的代码

 

1 module.exports = ctx => {
2   ctx.state.data = {
3     msg: 'Hello World'
4   }
5 }

 

  如图:

  

 

  2、打开 index.js

  在module.exports = router 前面加入

1 router.get('/demo',controllers.demo)

 

  3.更新腾讯云后

  打开浏览器输入 https://分配的二级域名/weapp/demo

  

  更新后浏览器显示

  

  三、链接MySql

  在 demo.js添加如下代码

复制代码

1 const { mysql } = require('../qcloud')
2 
3 module.exports = async ctx => {
4   var result = await mysql('user')
5   ctx.state.data = {
6     msg: result
7   }
8 }

复制代码

  更新腾讯云后访问浏览器就可以获得你想要的数据了

  如图

  

 

  更多数据操作,knex.js 了解一下

 

 

  附上我的demo.js

复制代码

 1 // 官网 Demo
 2 // module.exports = ctx => {
 3 //   ctx.state.data = {
 4 //     msg: 'Hello World'
 5 //   }
 6 // }
 7 
 8 const { mysql } = require('../qcloud')
 9 
10 module.exports = async ctx => {
11   var result = await mysql('user')
12   //sql:select * from `user`
13   ctx.state.data = {
14     msg: result
15   }
16 }
17 // =======================================================================================
18 // select 
19 // 显示指定字段:var result = await mysql.select('name', 'id').from('user')
20 // sql:selece 'name', 'id' from `user`;
21 
22 // 条件查询:var result = await mysql.select('id','name','openid' ).from('user').where('id',2)
23 // sql: select 'id','name','openid' form `user` where id=2;
24 
25 // =======================================================================================
26 // update
27 // var result = await mysql('user').update({ name: 'root', openid: 'xubde724xie=395' }).where('id', 2)
28 // sql:update `user` set name='root', openid='xubde724xie=395' where id=2;
29 
30 // =======================================================================================
31 // delete
32 // var result = await mysql('user').del().where('id', 3)
33 // sql:delete from `user` where id=3
34 
35 // =======================================================================================
36 // insect
37 // var result = await mysql.insert({ name: 'cain' }, { openid: 'Ux6892Drfixbx'}).into('user')
38 // var result = await mysql('user').insert({ name: 'cain', openid: 'Ux6892Drfixbx' })
39 // sql: insert into `user` (`name`, `openid`) values (`cain`, `Ux6892Drfixbx`)
40 // 两种均可
41 // 会返回插入条目id序号 注意传入的数据类型与表字段的数据类型不符不会报错
Logo

更多推荐