一、清理已有数据库(该步骤可忽视)
在终端输入
sudo lsof -i
看是否已有mongod存在,杀死这个PID,如图我的对应PID是875
sudo kill 875

二、打开数据库
在终端控制台输入如下语句,出现一些warning没有关系,出现一些collections accept字样就说明数据库连接成功了(终端不要关闭)
mongod --dbpath Path(自己的路径)

三、JS数据库连接代码
数据库连接和一些数据库操作的代码可以直接参考mongo DB官网的教程,链接如下:
http://mongodb.github.io/node-mongodb-native/3.1/quick-start/quick-start/
创建mongoTest.js文件,其中这次实验主要用到的是两个,一个连接数据库,一个插入数据


这里要自己调整一下,在连接里db变量创建之后,close()语句之前调用一下插入函数,也就是改变一下这里。
client.connect(function(err) {
assert.equal(null, err);
console.log("Connected successfully to server");
const db = client.db(dbName);
insertDocuments(db,function() {
client.close();
});
});
四、将连接写成函数,暴露
将连接的代码写为一个函数,传入的参数是数据。并且暴露这个函数,这样在之后的操作中,我们可以调用参数来让各个用户独立使用数据库
五、利用表单插入数据
结合(一)
利用表单输入数据,插入数据库,在开头require()我们的mongDB.js文件,就可以调用“连接+插入数据库”的操作
六、运行
运行httpserver.js,在表单里输入数据并提交,然后查看数据库里有没有成功插入

查看数据库操作:
1.在终端输入mongo,如果在第一步数据库成功启动的话是会显示一大串数据的
2.查看一些相关信息,其中myproject是我们创建的数据库,documents是我们进行操作的数据集

3.查看我们的数据有没有被插入,前面是自己随便测试的。最后一行可以看见我们在表单提交的数据被成功插入了
db.documents.find({})

七、代码
(1)mongoTest.js
const MongoClient = require('mongodb').MongoClient;
const assert = require('assert');
//连接数据库
const connetdb=function(data){
const url = 'mongodb://localhost:27017';
const dbName = 'myproject';
const client = new MongoClient(url);
client.connect(function(err) {
assert.equal(null, err);
console.log("Connected successfully to server");
const db = client.db(dbName);
insertDocuments(db,function() {
client.close();
});
});
};
//插入数据
const insertDocuments = function(db, data,callback) {
const collection = db.collection('documents');
collection.insertMany([
data
], function(err, result) {
assert.equal(err, null);
//assert.equal(1, result.result.n); //用于检查数据长度是否匹配
//assert.equal(1, result.ops.length); //用于检查操作次数是否匹配
console.log("Inserted 1 documents into the collection");
callback(result);
});
};
exports.condb=connetdb; //暴露
(2)httpsever.js参考(一),没有大的变动,只多了两个语句
在开头加入
let condb=require('./mongoTest');
在res.end()前加入
condb.condb(urlQuery);

本文详细介绍了如何清理MongoDB数据库、启动数据库服务、使用JS代码连接数据库及插入数据,包括步骤说明、代码示例及运行测试方法。
2822

被折叠的 条评论
为什么被折叠?



