使用Shell执行脚本
本章节主要讲述如何使用 SequoiaDB 巨杉数据库自带的 Shell 工具执行 JavaScript 脚本。 Shell 工具是一个 JavaScript 工具,能与 SequoiaDB 巨杉数据库进行命令交互。用户通过 SequoiaDB Shell 工具执行 JavaScript 脚本,能方便灵活的实现对数据进行增删改查等操作。
JavaScript 脚本
JavaScript 脚本的主要功能包括:创建集合空间与集合,数据的增删改查操作。
JavaScript 脚本(sdb_shell_test.js)的示例如下:
function main(){
// 连接数据库实例
// hostname 主机名, service_name 协调节点
var db = new Sdb(hostname,service_name);
// 创建集合空间
// cs_name 集合空间名
var cs_obj = db.createCS(cs_name);
// 创建集合
// cl_name 集合名
var cl_obj = cs_obj.createCL(cl_name);
// 插入数据
cl_obj.insert({"emp_no": 10002,"birth_date": "1964-06-02", "first_name": "Bezalel", "last_name": "Simmel", "gender": "F", "hire_date": "1985-11-21"});
cl_obj.insert({"emp_no": 10003,"birth_date": "1959-12-03", "first_name": "Parto", "last_name": "Bamford", "gender": "M", "hire_date": "1986-08-28"});
cl_obj.insert({"emp_no": 10004,"birth_date": "1954-05-01", "first_name": "Chirstian", "last_name": "Koblick", "gender": "M", "hire_date": "1986-12-01"});
// 修改数据
cl_obj.update({"$set": {"first_name": "SequoiaDB"}},{"emp_no": 10003});
// 删除数据
cl_obj.remove({"emp_no": 10004});
}
main();
执行 JavaScript 脚本
当用户使用 SequoiaDB Shell 工具执行 JavaScript 脚本,可参考以下示例:
$ export SEQUOIADB_HOME=`cat /etc/default/sequoiadb |grep "INSTALL_DIR"|cut -d "=" -f 2`
$ {SEQUOIADB_HOME}/bin/sdb -e "var hostname = 'localhost'; var service_name = 11810; var cs_name = 'emp'; var cl_name = 'employees';" -f sdb_shell_test.js
用户可以通过 SequoiaDB Shell 查看集合记录:
> db.emp.employees.find()
{
"_id": {
"$oid": "5c8b6eb49c91348f8af3b5b9"
},
"emp_no": 10002,
"birth_date": "1964-06-02",
"first_name": "Bezalel",
"last_name": "Simmel",
"gender": "F",
"hire_date": "1985-11-21"
}
{
"_id": {
"$oid": "5c8b6eb49c91348f8af3b5ba"
},
"birth_date": "1959-12-03",
"emp_no": 10003,
"first_name": "SequoiaDB",
"gender": "M",
"hire_date": "1986-08-28",
"last_name": "Bamford"
}
Return 2 row(s).
Takes 0.046815s.
SequoiaDB Shell 执行远端命令可参考本地执行远端命令说明。