데이터베이스 - mongo 사용 자습서
카탈로그
설치하다.
$ brew install mongodb
로컬 데이터베이스 시작
mongod --dbpath="pwd"
절차
mongoose
var mongoose = require('mongoose'),
DB_URL = 'mongodb://localhost:27017/mongoosesample';//mongo
/**
*
*/
mongoose.connect(DB_URL);
/**
*
*/
mongoose.connection.on('connected', function () {
console.log('Mongoose connection open to ' + DB_URL);
});
/**
*
*/
mongoose.connection.on('error',function (err) {
console.log('Mongoose connection error: ' + err);
});
/**
*
*/
mongoose.connection.on('disconnected', function () {
console.log('Mongoose connection disconnected');
});
--db.js
/**
* ⤴️
*/
module.exports = mongoose;
--user.js//다음은 user의 Schema를 사용자 이름으로 정의합니다.js
/**
*
*/
var mongoose = require('./db.js'),
Schema = mongoose.Schema;
var UserSchema = new Schema({
username : { type: String }, //
userpwd: {type: String}, //
userage: {type: Number}, //
logindate : { type: Date} //
});
/*
Schema ,
Schema Types :
String
Number
Boolean | Bool
Array
Buffer buffer
Date
ObjectId | Oid
Mixed
*/
--user.js
/**
* ⤴️
*/
module.exports = mongoose.model('User',UserSchema);
일반적인 데이터베이스 작업 - 첨삭 및 수정
save
var UserModel = require("./user.js");
/**
*
*/
function insert() {
var userModel = new UserModel({
username : 'Tracy McGrady', //
userpwd: 'abcd', //
userage: 37, //
logindate : new Date() //
});
userModel.save(function (err, res) {
if (err) {
console.log("Error:" + err);
}
else {
console.log("Res:" + res);
}
});
}
insert();
update
var UserModel = require("./user.js");
function update(){
var wherestr = {'username' : 'Tracy McGrady'};
var updatestr = {'userpwd': 'zzzz'};
UserModel.update(wherestr, updatestr, function(err, res){
if (err) {
console.log("Error:" + err);
}
else {
console.log("Res:" + res);
}
})
}
update();
findByIdAndUpdate
var UserModel = require("./user.js");
function findByIdAndUpdate(){
var id = '56f2558b2dd74855a345edb2';
var updatestr = {'userpwd': 'abcd'};
UserModel.findByIdAndUpdate(id, updatestr, function(err, res){
if (err) {
console.log("Error:" + err);
}
else {
console.log("Res:" + res);
}
})
}
findByIdAndUpdate();
삭제
var UserModel = require("./user.js");
function del(){
var wherestr = {'username' : 'Tracy McGrady'};
UserModel.remove(wherestr, function(err, res){
if (err) {
console.log("Error:" + err);
}
else {
console.log("Res:" + res);
}
})
}
del();
조건 조회에 테스트 데이터를 삽입했습니다.
var UserModel = require("./user.js");
function getByConditions(){
var wherestr = {'username' : 'Tracy McGrady'};//
var opt = {"username": 1 ,"_id": 0};// 1 ,0
UserModel.find(wherestr, opt ,function(err, res){
if (err) {
console.log("Error:" + err);
}
else {
console.log("Res:" + res);
}
})
}
getByConditions();
예를 들어 내가 나이 범위 조건을 조회하려면 어떻게 써야 합니까?
User.find({userage: {$gte: 21, $lte: 65}}, callback);//이는 조회 연령이 21세 이상이고 65세 이하라는 것을 나타낸다
:
$or
$nor
$gt
$gte
$lt
$lte
$ne
$in
$nin
$all
$regex ,
$size
$maxDistance , ( LBS)
$mod
$near , ( LBS)
$exists
$elemMatch
$within ( LBS)
$box , ( LBS)
$center , ( LBS)
$centerSphere , ( LBS)
$slice ( , N M )
, , api ^_^!
수량 조회
var UserModel = require("./user.js");
function getCountByConditions(){
var wherestr = {};
UserModel.count(wherestr, function(err, res){
if (err) {
console.log("Error:" + err);
}
else {
console.log("Res:" + res);
}
})
}
getCountByConditions();
근거id 조회
var UserModel = require("./user.js");
function getById(){
var id = '56f261fb448779caa359cb73';
UserModel.findById(id, function(err, res){
if (err) {
console.log("Error:" + err);
}
else {
console.log("Res:" + res);
}
})
}
getById();
모호한 조회 (정규 일치 조회)
var UserModel = require("./user.js");
function getByRegex(){
var whereStr = {'username':{$regex:/m/i}};//
UserModel.find(whereStr, function(err, res){
if (err) {
console.log("Error:" + err);
}
else {
console.log("Res:" + res);
}
})
}
getByRegex();
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.