文档中心 > 淘宝购物小程序-开发指引

使用说明

更新时间:2023/02/08 访问次数:19842

云开发提供了两类托管在云端的数据库:MongoDB和MySQL。

说明:为了保证私密且安全的操作数据库,所有数据库API只能在云函数内部进行调用,不支持在小程序端上进行调用。


MongoDB数据库是基于 MongoDB 托管在云端的数据库,数据以 JSON 格式存储。一个数据库可以有多个集合(相当于关系型数据中的表),集合可看做一个 JSON 数组,数组中的每个对象就是一条记录,记录的格式是 JSON 对象。

MySQL数据库基于阿里云PolarDB 托管在云端的数据库,可以在云函数中使用标准的SQL语句对数据进行操作。


一、MongoDB 与 MySQL 差异


MongoDB 和 JSON 格式的数据存储方式,跟关系型数据库(MySQL)不一样。


以下表格列举了 MongoDB 和关系型数据库 MySQL 的异同点。


MySQL

MongoDB

database

数据库

database

数据库

table

表

collection

集合

row

记录、行

document

文档、记录、行

column

字段

field

域

index

索引

index

索引

table joins

表连接

MongoDB 不支持

primary key

主键

MongoDB 自动将 _id 字段作为主键


二、使用方法


前提条件


要使用云函数SDK中提供的数据库API进行数据库操作,云函数SDK版本中必须有此API,否则调用可能会报错(Error: connect EHOSTUNREACH 124.238.245.213:80),建议始终把云函数SDK版本号改成最新版本。


1121.png


以下是使用数据库API在数据库中新增记录的例子。


//MongoDB 向users集合中新增一条记录
exports.main = async function(context) {
    const cloud = context.cloud; 
    const result = await cloud.db.collection('users').insertOne({  
        name: 'tom',  
        age: 1 
    });
    return result;
}
//MySQL 向users表中增加一条记录
exports.insert = async (context) => {
  try {
     let data = await context.cloud.dataspace.executeSql('insert into users(name,age) values(?,?)', ['cx',18]);
     return data;  
  } catch (err) {
    console.log(err);  
    return {  success:false,  msg: err,  }  
  } 
}


更多数据库API 的具体使用方法,参考 MongoDB数据库 API 和 MySQL数据库API。(数据库暂不支持DDL操作)


FAQ

关于此文档暂时还没有FAQ
返回
顶部