JavaScript mongodb(数据库)简单值
数据库相关操作
具体步骤:
1、mongo打开。
2、show dbs 查看所有的数据库。
3、use stus使用或者新建数据库。
4、db.stus.insertOne({name:"l4",age:20})新增一个。
5、 db.stus.insertMany([{name:"张三",age:22},{name:"张三",age:25}])新增多个。
6、 db.stus.find({name:"张三"})查找。
7、> db.stus.find({name:"张三",age:22})多个查找。
8、db.stus.updateOne({name:"张三"},{$set:{name:"zhangsan1"}})修改。
9、 db.stus.drop()删除集合。
nodejs读取mongo数据库并使用数据
npm i mongoose 下载
nodejs向mongodb写入数据
//引入mongoose
let mongoose = require("mongoose");
//mongoose连接数据库
mongoose.connect("mongodb://127.0.0.1/stus",{ //mongodb://127.0.0.1/stus进入mongodb的地址找一个stus的数据库useNewUrlParser: true,//为可选参数,也是之前老版本去除警告需要的参数useUnifiedTopology: true,
});
//连接成功之后执行事件
mongoose.connection.on("connected",function(){console.log("连接成功!!");
})
/* 设置数据库数据的格式 */
const users = new mongoose.Schema({username:{type:String,//数据类型required:true,//是否必填unique:true,//唯一性minlength:3,//最小长度maxlength:10,//最大长度trim:true,//去掉左右空字符串},password:{type:String,required:true,select:false,//查找是不显示此项},sex:{type:String,default:"男"//可以不用填写,默认值},age:{type:Number,default:18}
});
/* 创建数据模型
1:数据模型名称
2:数据结构
3:数据模型对应的数据库中的数据集合名称*/
let adminModel = mongoose.model("adminModel",users,"practice");//practice集合
let arr=[{username:"吴磊",
password:"123456",
},{username:"勇",
password:"123456",
},{username:"林少",
password:"123456",
}];
/* 插入数据第一种方法 */
// adminModel.create(arr,function(err){
// if(err) {
// console.log("失败");
// }
// else{
// console.log("新建数据成功");
// }
// })
/* 插入数据第二种方法 */
adminModel.insertMany(arr,(err)=>{if(err) {console.log(err);}else{console.log("新建数据成功");}
});
SchemaType 选项
Mongoose 5.0 中文文档
type:String 类型
required:布尔值 是否必填 默认为false
unique:布尔值 是否唯一 默认为fasle
select:布尔值 是否为读取可见 默认为fasle
default:任意值 设置默认值
简单值全部代码:
/* 引入文件使用 */
let mongo=require('mongoose');
/* 连接数据库 */
mongo.connect('mongodb://127.0.0.1/stus',{useNewUrlParser: true,//为可选参数,也是之前老版本去除警告需要的参数useUnifiedTopology: true,
});
/* 连接成功后执行打印 */
mongo.connection.on('connected',()=>{console.log('已和数据库连接!');
});
/* 数据格式 */
const books=new mongo.Schema({bookname:{type:String,required:true,//是否必填unique:true,//唯一性minlength:3,//最小长度maxlength:10,//最大长度trim:true,//去掉左右空字符串},author:{type:String, required:true,},//字符串,必填count:{type:Number,},//数字hot: {type:Number, default:10,},//数字,热度,默认值10type:{type:String,required:true,},//字符串,类型date:{
type:Date,
default:Date.now,//现在的日期}
});
/* 创建数据模型
1:数据模型名称
2:数据结构
3:数据模型对应的数据库中的数据集合名称*/
let booksModel=mongo.model('booksModel',books,'books');//第三个参数是一个数据库里面的集合
/* 生成数据 */
let arr=[{bookname:"碎脸",author:"鬼古女",count:20000,hot:20,type:"恐怖",
},{bookname:"极具恐怖",author:"弹指一笑间0",count:30000,hot:17,type:"悬疑",
},{bookname:"烧纸人",author:"于雷",count:15000,hot:18,type:"冒险",
},{bookname:"记忆迷踪",author:"启山",count:12000,hot:14,type:"探险",
},{bookname:"蝴蝶公墓",author:"蔡骏",count:8000,type:"爱情",
}];
/* 插入数据 */
booksModel.create(arr,(err)=>{if(err) console.log("数据创建失败");console.log("数据已新建成功!");
})
简单值工程化:
/* 引入文件使用 */
let mongo=require('mongoose');
/* 连接数据库 */
mongo.connect('mongodb://127.0.0.1/stus',{useNewUrlParser: true,//为可选参数,也是之前老版本去除警告需要的参数useUnifiedTopology: true,
});
/* 连接成功后执行打印 */
mongo.connection.on('connected',()=>{console.log('已和数据库连接!');
});
/* 引入文件使用 */
let mongo=require('mongoose');
/* 数据格式 */
const books=new mongo.Schema({bookname:{type:String,required:true,//是否必填unique:true,//唯一性minlength:1,//最小长度maxlength:10,//最大长度trim:true,//去掉左右空字符串},author:{type:String, required:true,},//字符串,必填count:{type:Number,},//数字hot: {type:Number, default:10,},//数字,热度,默认值10type:{type:String,required:true,},//字符串,类型date:{
type:Date,
default:Date.now,//现在的日期}
});
/* 创建数据模型
1:数据模型名称
2:数据结构
3:数据模型对应的数据库中的数据集合名称*/
let booksModel=mongo.model('booksModel',books,'books');//第三个参数是一个数据库里面的集合
/* 暴露 booksModel*/
module.exports=booksModel;
* 引入文件使用 */
require('./connection.js');
let book = require("./booksModel.js");
第一种
/* 生成数据 */
let arr=[{bookname:"碎脸",author:"鬼古女",count:20000,hot:20,type:"恐怖",
},{bookname:"极具恐怖",author:"弹指一笑间0",count:30000,hot:17,type:"悬疑",
},{bookname:"烧纸人",author:"于雷",count:15000,hot:18,type:"冒险",
},{bookname:"记忆迷踪",author:"启山",count:12000,hot:14,type:"探险",
},{bookname:"蝴蝶公墓",author:"蔡骏",count:8000,type:"爱情",
}];
/* 插入数据 */
book.create(arr,(err,data)=>{if(err) console.log("数据创建失败");console.log("数据已新建成功!");
})
第二种
/* 第二种创建方式 只能单次new一个对象 */
let model = new book({bookname:"老妖精",author:"多好多好",hot:30,count:3000,type:"玄幻"
});
model.save((err,data)=>{if(err) console.log(err);else{console.log(data);}
});
/* 第三种创建方式 */
async function add() {let obj = {bookname: "完美界",author: "张东",hot: 20,count: 2000,type: "玄幻",};await book.create(obj);}add();
JavaScript mongodb(数据库)简单值相关推荐
- Node.js毕业设计——基于Node.js+JavaScript+MongoDB的供求信息网站设计与实现(毕业论文+程序源码)——供求信息网站
基于Node.js+JavaScript+MongoDB的供求信息网站设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于Node.js+JavaScript+MongoDB的供求信息网站设计 ...
- python操作mongodb数据库
2019独角兽企业重金招聘Python工程师标准>>> 一.MongoDB 数据库操作 连接数据库 import pymongo conn = pymongo.Connection( ...
- 58 Node.js中操作mongoDB数据库
技术交流 QQ 群:1027579432,欢迎你的加入! 欢迎关注我的微信公众号:CurryCoder 的程序人生 1.数据库概述及环境搭建 1.1 为什么要使用数据库 动态网站中的数据都是存储在数据 ...
- 关于MongoDB数据库的总结
既然要说MongoDB数据库,先引入NoSQL的概念. NoSQL: NoSQL,指的是非关系型的数据库.NoSQL有时也称作Not Only SQL的缩写,是对不同于传统的关系型数据库的数据库管理系 ...
- 前端笔记之NodeJS(四)MongoDB数据库Mongoose自制接口MVC架构思想|实战
一.MongoDB数据库 1.1 NoSQL简介 随着互联网web2.0网站的兴起,传统的SQL数据库(关系数据库)在应付web2.0网站,特别是超大规模和高并发的SNS(social network ...
- mongodb数据库淘汰_MongoDB 等 NoSQL 与关系型数据库相比,有什么优缺点及适用场景?...
利益相关:MongoDB 员工,开发 MongoDB 数据库 5 年.十年前,当 Dwight 和我开始这个后来成为 MongoDB 的项目的时候,我们绝对没有想到它今天的样子.我们只有一个信念:让开 ...
- Mongodb数据库初识
Mongodb数据库初识 一.什么是数据库 1.标准定义 2.数据库的概念 3.数据库的简单理解 4.使用数据库的原因 ①普通文件系统存储大量数据的问题 ②数据库的高效性 二.数据库的分类 1.关系型 ...
- 浅析MongoDB数据库的海量数据存储应用
[摘要]当今已进入大数据时代,特别是大规模互联网web2.0应用不断发展及云计算所需要的海量存储和海量计算发展,传统的关系型数据库已无法满足这方面的需求.随着NoSQL数据库的不断发展和成熟,可以较好 ...
- MongoDB数据库(了解MongoDB及基础命令,备份数据库)
文章目录 MongoDB数据库(了解MongDB及基础命令,备份数据库) 什么是MongoDB ? 主要特点 配置mongdb数据库 多实例配置 数据库操作 备份数据库 MongoDB数据库(了解Mo ...
- [置顶] NoSQl mongodb数据库 配置篇
mongodb飞一般的数据库 序言 一直想接触一下大数据量的开发,最近发现NoSQL数据库有着关系型数据库非常明显的优势,特别是对于海量数据的处理 还有其他一些数据这里就不多说了 大家可以去看看了解一 ...
最新文章
- 【CV】10种轻量级人脸检测算法大PK | 代码集合开源
- mysql半备份_MySQL半同步复制与增强半同步复制详解及安装
- kotlin集合操作符——顺序操作符
- Hive的安装和配置
- 渲染终极者 finalRender R3.5 SE for 3ds max/design 2009/2010/2011 32位/64位 汉
- cmd命令 - vue项目:单独安装vue-router
- 深度学习笔记(43) Siamese网络
- 通过案例学调优之--和 LOG BUFFER 相关的主要 Latch
- redhat 7.2更新yum源时踩的坑
- 算法59----打家劫舍【动态规划】
- centreon与nagios整合
- php是一种,php是一种什么类型的语言
- screentogif能录制声音吗_学会了吗?使用GoldWave录制电脑中的声音
- 计算机系统新手入门,电脑初学者入门教程
- DIAMOND: 超快的蛋白序列比对软件
- Docx4j简单学习
- 脚本重启电信天翼网关
- np.array_split()np.split()
- python分割出两幅图像重叠区域代码
- 计算机专业就业方向与前景以及你所要具备的技能(本科生)
热门文章
- JavaPoet动态生成代码,高薪程序员必会
- Arouter源码解析(二)——ASM和JavaPoet
- 文章8:多功能智能跟随行李箱控制系统设计 | 本科毕业设计 - 【毕设答辩问答记录】
- Hadoop第四天--shell编程
- HDFS 本地编程报错java.net.ConnectException: Call From LAPTOP-LJF22VB3/192.168.56.1 to 192.168
- 定时器自动装载c语言,定时器初始化新写法
- 透过数据读懂纷繁世界 中译语通“NexMagic再·奇迹”年度峰会召开
- html 中的 css 的强制换行与不换行文本
- 区块链技术的概念及作用
- Android Studio 使用Profiler时App崩溃闪退