当前您所在的位置:首页>文件对比 数据库管理 >数据库管理工具

NoSQLBooster for MongoDB

查询代码生成器

NoSQLBooster for MongoDB 4.2带有查询代码生成器,允许用户将MongoDB查询(查找,聚合或SQL查询)转换为各种目标语言:MongoDB Shell,JavaScript(Node.js),Java,C#和Python。

要使用查询代码生成器:

1.输入find,aggregate或SQLQuery语句,执行并获取结果。 (提示:在4.1版本中,您甚至可以使用可视化查询生成器)

2.单击结果视图工具栏中的“查询码生成器”按钮,弹出“查询码生成器”对话框

3.从下拉列表中选择您的目标语言。 “查询代码生成器”目前支持MongoDB Shell,Javascript      Node.js ES5,Javascript Node.js ES6 Promise,Javascript Node.js ES7 Async / Await,Python(PyMongo 3.x),C#(2.x驱动程序)和Java (3.x驱动程序)

4.将生成的代码复制到剪贴板

一键式解释

这个版本还提供了一个友好的一键解释功能,它将调用“cursor.explain”方法来返回一个包含查询计划和可选的执行统计信息的文档。 该功能支持查找,聚合或SQL查询方法的结果信息。

使用一键解释

1.输入find,aggregate或SQLQuery语句,执行并获取结果。

2.单击结果视图工具栏中的“说明”按钮,并用查询计划显示文档。

小的改进

统计工具提示索引

此版本还美化了统计工具提示并显示了索引的统计工具提示。

适用于MongoDB的最智能的IDE

MongoBooster是一个以shell为中心的跨平台GUI工具,用于MongoDB v2.4-3.4,它提供了流畅的查询生成器,SQL查询,就地更新,ES2017语法支持和真正的智能感知体验。

免费版现在可用。

嵌入式外壳

MongoBooster嵌入V8 JavaScript引擎。 没有外部的MongoDB命令行工具依赖。

MongoDB 2.4 到 3.4

MongoBooster可以连接MongoDB服务器,并完全支持从v2.4到v3.4的mongo shell命令。

企业版

通过添加身份验证机制来支持MongoDB企业版:Kerberos(GSSAPI)和LDAP(PLAIN).

为什么选择 MongoBooster?

真正的智能感知

我们提供真正的智能感知体验。 内置的语言服务知道所有可能的完成,方法,属性,变量,关键字,甚至是MongoDB集合名称,字段名称和运算符。智能感知建议将在您输入时弹出。 你总是可以用Ctrl-Shift-Space手动触发它。开箱即用,Ctrl-SpaceAlt-Space是可以接受的触发器。

IntelliSense


Fluent查询生成器

独特的功能

MongoBooster支持类似mongoose的流畅的查询构建器API,使您能够使用链接语法构建查询,而不是指定JSON对象。汇总框架现在也很流畅。 您可以按照当前文档或通过可链接的方法使用它。

// instead of writing:
db.user.find({age:{:18,:65}},{name:1,age:1,_id:-1}).sort({age:-1, name:1});

 
// we can write:
db.user.where('age').gte(18).lte(65).select('name age -_id').sort("-age name");    

 
// passing query conditions is permitted too
db.collection.find().where({ name: 'mongobooster' })

 
// chaining
db.collection
    .where('age').gte(18).lte(65)
    .where({ 'name': /^mongobooster/i })
    .where('friends').slice(10)

 
// aggregation
db.companies.aggregate(qb.where('founded_year').gte(2000).lte(2010)) //qb:querybuilder
  .group({_id:"$category_code",count:{$sum:1}})
  .sort('-count')
  .limit(100)

用SQL查询MongoDB

使用MongoBooster,您可以针对MongoDB运行SQL SELECT Query。 SQL支持包括函数,表达式,嵌套对象和数组的集合。

我们来看看如何在SQL中使用带SUM函数的GROUP BY子句。

而不是编写表示为类似JSON结构的MongoDB查询  

db.employees.aggregate([
    {
        $group: {
            _id: "$department",
            total: { $sum: "$salary" }
        },
    }
])

您可以使用您可能已经知道的旧SQL来查询MongoDB

  SELECT department, SUM(salary) AS total FROM employees GROUP BY department

可视化查询生成器

MongoBooster带有可视化查询生成器。双向查询生成器可以帮助您构建和显示复杂的MongoDB查找语句,即使不了解MongoDB shell命令语法。

Query Builder


模式分析器

模式分析器是一个非常有用的内置工具。由于无模式特性,MongoDB中的集合没有描述字段数据类型,集合结构和验证的模式文档。使用我们全新的模式分析器工具,您将获得一个文档来描述来自抽样(随机,第一,最后)N或所有记录的特定集合的模式。

该文件显示了抽样对象的概率,不同类型的百分比,可以得到某个集合的模式简介。如果你想要更准确的结果,你可以采样更多的记录或分析整个收集,但如果收集有数百万条记录或数千个字段,可能需要很长时间才能完成。

它还显示了集合的文档验证,这是MongoDB 3.2中的一个新功能。文档下方会显示一个验证器窗口。 如果您点击链接,字段将在窗口中突出显示。

您可以将此文档导出到最流行的文档文件类型,如MS Word,PDF,HTML以及JSON,TXT和CSV。 也支持Mongoose.js模式文件。


测试数据生成器

在Mongobooster 3.0中随机创建一个大集合,但是“真实数据”是可用的。我们现在提供100多个模板来创建随机伪造的“真实”数据,您可以使用这个工具创建难以置信的大尺寸的测试数据。您还可以定义多少数据也是空白的,以及要创建多少个文档。所有设置将在shell中生成一个脚本,并且可以使用更复杂的业务逻辑对其进行自定义。

test data generator


用于MongoTop的GUI

对于MongoDB,mongotop和Unix命令做的工作几乎一样,它被用来监视Mongo实例。mongotop的输出表示在更新间隔期间mongod进程花费读取和写入特定集合的时间。 mongotop提供每个集合级别的统计信息。

MongoBooster为MongoTop提供了一个内置的GUI工具。 没有外部的MongoTop命令行工具依赖。

MongoTop


MongoStat的GUI

mongostat实用程序提供了当前正在运行的mongod或mongos实例的状态的快速概览。 mongostat在功能上与UNIX / Linux文件系统实用程序vmstat类似,但提供有关mongod和mongos实例的数据。

MongoBooster也为MongoStat提供了一个内置的GUI工具。 没有外部的MongoStat命令行工具依赖。

MongoStat


MongoDB企业版

MongoBooster现在正式支持MongoDB企业版,除了已经支持的常规用户名/密码(SCRAM-SHA-1(在MongoDB 3.0中添加)/ MONGODB-CR)之外,还添加了两个新的身份验证机制Kerberos(GSSAPI)和LDAP(PLAIN)X.509。此功能在所有授权版本中均可用。 不再额外收费。

MongoDB Enterprise


嵌入式Mongo Shell

MongoBooster嵌入了基于V8 JavaScript引擎的mongo shell。 没有外部的MongoDB命令行工具依赖。 它可以为MongoDB工作:2.4-3.4


原地更新

MongoBooster在结果树视图中支持就地编辑。 双击任何值或数组元素进行编辑。在就地编辑器中支持完整的MongoDB数据类型,实现无损编辑和保存。

In-place editor


支持 GridFS

MongoBooster完全支持MongoDB的GridFS。 使用我们的GridFS查看器,您可以读取和写入GridFS集合。 文件可以通过拖放轻松添加。

GridFS support


只读状态锁定

您可以完全访问生产数据库,但通常您不想错误地更改任何内容,您可以使用只读状态锁定。 有两种使用方法:

您也可以使用解锁按钮暂时解锁锁定的配置。 临时锁定/解锁仅影响当前选项卡。


用颜色标记连接

在同时使用dev / prod数据库时,可能会无意中删除或更新prod上的某些内容而不是dev。现在你可以用红色标记prod,用绿色标记dev。 这会帮助你防止这种错误。

Mark With Color


自动刷新结果数据视图

在dataview设置菜单下,添加一个dataview自动刷新设置列表。无论您使用哪种视图,数据视图都会在一定时间内自动刷新(注意:如果您想更改shell代码,则需要暂停除倒计时以外的自动刷新)


数吨片段

我们提供了大量的内置代码片段来帮助您有效地编写MongoDB shell脚本。 MongoBooster也支持用户定义的片段。

Snippets


即时错误检测

丰富的语言服务在后台不断分析您的代码。 所有错误都会在编辑器中正确输出,任何可能出现问题的代码行都会在编辑器中显示出来,所以您可以很容易的发现它。

Error Detections


参数提示

在脚本编辑器中,参数提示将在您输入方法调用时弹出。 您可以使用↑和↓在不同的重载之间导航,并根据您传入的参数显示最佳重载。

Parameter Hints


鼠标悬停

鼠标悬停将显示许多有用的信息,如符号类型,函数定义,类型信息和文档。

Hover


支架匹配

一旦光标靠近其中一个,匹配的括号就会突出显示。

Bracket Matching


着名的编辑器功能


拥抱ES2017

MongoBooster包含一些有用的MongoDB外壳扩展,使MongoDB外壳内的生活更容易一些。

ES2017(正式ES7)是JavaScript语言向前迈进的一步。 由于内置了对块变量作用域,箭头函数,模板字符串的支持以及对语言的许多其他改进,因此它使我们可以编写更加简洁易读的MongoDB shell脚本。

ES2015


异步编码与等待

MongoBooster有一个内置的函数await方法(这是一个常用的js方法,而不是关键字)。 它可以等待承诺或承诺阵列。 注意,这个await函数和es7 await不同,这个await函数可以用在没有标记async关键字的函数中。

请尝试下面的代码:

function sendSmsAsync(phone, message){ //promisify sendSms
    return new Promise((resolve, reject)=> {
            sendSms(phone, message, (status)=>{
                resolve(status)
            })
    });
}

 
db.users.find({}).forEach((user) => {
   let status=await(sendSmsAsync(user.phone, "A short message")); //await a promise
   db.smsDeliveries.insert({status});
});

Lodash, ShellJs, Mathjs和 Moment  

MongoBooster集成了lodash,shelljs,mathjs和momentjs实用程序库。 你可以在shell脚本中直接使用lodash(_),shelljs(shelljs),mathjs(math)和momentjs(moment)。

Lodash And MomentJS


使用节点模块

您可以在MongoDB shell脚本中组装npm包,如构建块。 npm注册机构拥有近50万个免费,可重复使用的代码包 - 世界上最大的软件注册表。

启动MongoBooster。 - 执行主菜单 - >帮助 - >打开用户数据目录 - 在此文件夹的新终端

npm i node-fetch  # run it in MongoBooster user data directory

在MongoBooster用户数据目录中成功安装此包后,您可以在MongoBooster脚本中要求并访问它。

.

const fetch=require('node-fetch');
let res=await(fetch('https://api.github.com/users/github')); //await promise 
res.json()

命令选项板

MongoBooster可以做的一切就是在命令面板中。 使用快捷方式查看:按Ctrl-Shift-P键。 不要点击所有的应用程序菜单来查找某些内容,只需按Ctrl-Shift-P并搜索命令即可。

Command Palette


用于转储和还原的GUI

MongoBooster包含用于mongodump和mongorestore命令行程序的GUI工具。

MongoDump

MongoRestore


简单的数据传输/数据库之间的同步

MongoBooster只需几个简单的步骤,就可以轻松在数据库之间传输和同步数据。您可以轻松克隆数据库,将缺失的记录从一个数据库添加到另一个数据库,或覆盖目标数据库中的集合。甚至可以同步来自任何两个数据库的记录(基于匹配的“_id”字段)。并且此数据传输/同步的所有功能都可以在任何连接之间工作,所以在本地镜像远程数据库(可用于调试目的)很简单,或者只是定期维护Web上部署的多个数据库之间的同步性。

Import

简单的进口和出口

简单的导入和导出JSON / CSV文件的集合,就像测试数据生成器一样,我们将所有导出/导入/复制逻辑放在shell中,您可以查看代码以进行更改。 进度显示在console.log / print标签中。

Import


从关系型数据库管理系统导入表

如果你想将项目的数据库从MySql转换到MongoDB,或者需要从第三方数据库导入数据。现在你可以通过我们的RDBMS数据导入工具来完成。 我们现在支持MySql,PostgreSql和MSSQL。 像测试数据生成器一样,您可以在UI上配置它,或者在shell中编写更复杂的业务逻辑。

Import Data


导出到SQL文件

我们增加了导入RDBMS到MongoDB,另一方面,我们也提供导出MongoDB数据库/集合到.sql文件。 支持的方言包括MySql,MSSQL,PostgreSql和Oracle。

外壳日志窗口

在MongoBooster GUI中使用不同的视图来学习MongoDB shell命令

Log Window


更多功能!

受到全球数百家公司的信赖

 

北京哲想软件有限公司