SequoiaDB巨杉数据库_SequoiaDB
SequoiaDB巨杉数据库_下载

文档

安装

基本操作

数据模型

系统架构

数据库管理

连接器

驱动

参考手册

故障排除

SAC

版本信息

Web服务

历史版本BUG预警

帮助

  • 内容
  • 评论
  • 修订记录

插入

在 SequoiaDB 中,insert 操作是向集合中添加新的文档记录。我们可以使用insert() 方法向 SequoiaDB 中的集合中添加记录。

Note: 本文档的所有例子都是使用 SequoiaDB 的 shell 接口。

所有的插入操作在 SequoiaDB 中具有如下性质:

  • 如果插入的文档记录没有 _id 字段,客户端将会为记录自动添加 _id 字段,并且填充一个唯一值。

  • 如果指定 _id 字段,那么在集合中 _id 的值必须唯一;否则出现操作异常。

  • 最大的 BSON 文档长度为16MB。

  • 文档结构的字段命名有如下限制:

    字段名 _id作为主键保存在集合中,它的值必须唯一且不可改变,它的值可以是除数组类型以外的其他任何类型。字段的命名不能是空串;不能以$开始;不能含有(.)。

insert()

insert() 是向SequoiaDB 集合中插入记录的主要方法。

插入第一个文档

如果集合空间集合不存在,可以使用如下命令进行创建集合空间和集合:

> db.createCS("foo")
> db.foo.createCL("bar")

之后才能做插入操作。

> db.foo.bar.insert( { _id: 1, name: { fist: "Jhon", last: "Black" }, phone: [ 1853742000, 1802321000 ] } )

可以使用 find() 方法确认是否插入成功。

> db.foo.bar.find()
{
  "_id": 1
  "name": {
    "fist": "Jhon",
    "last": "Black"
  },
  "phone": [
    1853742000,
    1802321000
  ]
}

不指定 _id 字段

如果新的文档记录不包含 _id字段,insert 方法会自动向文档添加 _id 字段并生成一个唯一的 $oid 值

> db.foo.bar.insert( { name: "Tom", age: 20 } )
> db.foo.bar.find()
{
  "_id": {
    "$oid": "5806c732173d09e66d000001"
  },
  "name": "Tom",
  "age": 20
}

插入多条记录

如果向 insert 方法中传一个数组类型的文档,insert()方法将会在集合中执行批量插入。

下面的操作是向集合 bar 中插入两条记录。此操作也说明了 SequoiaDB的动态模式的特点。尽管 _id:20 的记录含有字段名 phone 而在另一条记录中不存在,SequoiaDB 不要求其他记录必须含有此字段。

> db.foo.bar.insert( [ { name: "Mike", age: 15 }, { _id: 20, name: "John", age: 25, phone: 123 } ] )
请登陆后再发表评论
最新评论
更新日志
  • 2016-10-20
    v2.8
回到顶部
公司简介
广州巨杉软件专注新一代大数据技术研发,是国内唯一的原厂企业级分布式数据库公司。
巨杉坚持产品从零开始自主研发,为用户提供安全可靠、性能卓越的海量数据存储管理、高并发实时处理、分布式计算以及实时流处理等企业级数据处理解决方案。
巨杉目标是打造超越Oracle的分布式数据库,目前在金融、政府、电信多个行业得到了广泛应用,并在超过20家大中型银行的核心生产系统应用。
粤ICP备13048785号     广州巨杉软件开发有限公司 版权所有