2016-12-27 1347 views
0

我是nosql的新手,我想在mongodb中创建一个集合。当我看到教程时,所有教程都是关于插入的。我想知道我们是否可以创建具有特定数据类型的集合。例如当我们在sql中创建一个表格时,我们会给出具体的数据类型,那么我们可以在nosql中创建一个类似的集合吗?如何在mongodb中创建集合并指定字段的数据类型

例子(SQL)

create table test(
id primary key auto increment, 
date_en date 
number int); 

请帮我这个

谢谢

回答

0

其实MongoDB的是因为MongoDB中的无模式数据库是一个JSON风格的数据商店。存储在数据库中的文档可以具有不同的字段集合,每个字段的类型不同。

但这并不意味着无法定义模式。您可以根据项目需要定义模式。您可以使用一些工具来定义您的模式,如猫鼬

这里我展示了使用猫鼬来定义模式的过程。

var mongoose = require('mongoose'); 
var Schema = mongoose.Schema; 

var mySchema= new Schema({ 
    title: String, 
    date_en: Date, 
    number: Number 
}); 
module.exports = mongoose.model('collectionname', mySchema); 

OR

var mySchema= new Schema({ 
    title: { type: String}, 
    date_en: { type: Date, default: Date.now }, 
    number: {type: Number} 
}); 

module.exports = mongoose.model('collectionname', mySchema); 

NB:根据您的集合名称会做创建表名和猫鼬将创建_id自动独特也因此无需定义id

欲了解更多信息可以访问Mongoose site

0

我想这是不可能在mongo db中定义模式。 请参考mongo官方文档中的链接。

https://docs.mongodb.com/manual/core/data-modeling-introduction/

“数据MongoDB中有一个灵活的架构不同于SQL数据库,在那里你必须确定并插入数据之前申报表的模式,MongoDB的集合不会强制文档结构。这种灵活性有助于映射每个文档都可以匹配代表实体的数据字段,即使数据有很大差异,但实际上,集合中的文档具有相似的结构。“

相关问题