不管是基於robomongo 的可視化工具,亦或是基於 mongoose 的函數工具,只要是對 mongodb 的操做,第一步都是開啓數據庫。sql
進入mongod所在目錄 執行命令 ./mongod --dbpath=存放數據的位置 例1:./mongod --dbpath d:\MongoDB\db 例2:./mongod --dbpath d:\MongoDB\db --port 自定義端口號,默認27017(瞭解便可,不推薦使用,修改默認端口號後期維護麻煩)
let mongoose = require('mongoose'); let log = console.log.bind(console); let db = null; let Schema = mongoose.Schema; // 連接數據庫 mongoose.connect('mongodb://localhost/fay'); db = mongoose.connection; db.on('error', console.error.bind(console, 'connection error:')) db.once('open', (cb) => { // 設置數據庫類型 let PersonSchema = new Schema({ name: { type: 'String', required: true }, age: { type: 'Number', retuired: true } }); // 新建集合(如存在該集合,就選中) let PersonModel = db.model('person', PersonSchema); // 須要保存的數據 let data = { age: 50, name: 'leno' }; // 實例化集合並插入數據 let personEntity = new PersonModel(data); // 保存實例 personEntity.save((err, res) => { if(err) return log(err); db.close(); }); })
let mongoose = require('mongoose'); let log = console.log.bind(console); let db = null; let Schema = mongoose.Schema; // 連接數據庫 mongoose.connect('mongodb://localhost/fay'); db = mongoose.connection; db.on('error', console.error.bind(console, 'connection error:')) db.once('open', (cb) => { // 設置數據庫類型 let PersonSchema = new Schema({ name: { type: 'String', required: true }, age: { type: 'Number', retuired: true } }); // 選擇集合(如不存在該集合,就新建) let PersonModel = db.model('person', PersonSchema); // 刪除的條件 let del = {name: 'leno'}; // 刪除命令 PersonModel.remove(del, (err, res) => { if(err) throw new Error(err); log(res); db.close(); }) });
let mongoose = require('mongoose'); let log = console.log.bind(console); let db = null; let Schema = mongoose.Schema; // 連接數據庫 mongoose.connect('mongodb://localhost/fay'); db = mongoose.connection; db.on('error', console.error.bind(console, 'connection error:')) db.once('open', (cb) => { // 設置數據庫類型 let PersonSchema = new Schema({ name: { type: 'String', required: true }, age: { type: 'Number', retuired: true } }); // 選擇集合(如不存在該集合,就新建) let PersonModel = db.model('person', PersonSchema); // 舊數據 let oldVal = {name: 'leno'}; // 新數據 let newVal = {name: 'liao'}; // 多個新數據 let newVal2 = {name: 'liao', age: '25'}; // 修改(更新)命令 PersonModel.update(oldVal, newVal, (err, res) => { if(err) throw new Error(err); log(res); db.close(); }); })
let mongoose = require('mongoose'); let log = console.log.bind(console); let db = null; let Schema = mongoose.Schema; // 連接數據庫 mongoose.connect('mongodb://localhost/fay'); db = mongoose.connection; db.on('error', console.error.bind(console, 'connection error:')) db.once('open', (cb) => { // 設置數據庫類型 let PersonSchema = new Schema({ name: { type: 'String', required: true }, age: { type: 'Number', retuired: true } }); // 選擇集合(如不存在該集合,就新建) let PersonModel = db.model('person', PersonSchema); // 查詢條件 let sql = {name: 'liao'}; // 查詢命令 PersonModel.find(sql, (err, res) => { if(err) throw new Error(err); log(res); db.close(); }); });
在已存在的集合中,添加新的字段。schema.add()
mongodb