年初粗略学习了下node,这好几个月没玩,突然发现已经忘完了,还是简单记录下基本知识,方便再次使用时资料查找。

一、mongoDb安装

在mac上安装了brew的情况下,可以直接执行命令

brew install mongodb,在mac系统中往往因为需要写入权限而要加入sudo

然后等几分钟就安装好了

1、mongoDb启动  

第一个终端窗口输入 sudo mongod --config /usr/local/etc/mongod.conf

然后在第二个终端窗口输入  mongo

2、mongoDb关闭

方式一:在第一个窗口直接按  control+C

方式二:在第二个窗口切换数据库到admin  use admin  然后执行  db.shutdownServer({force : true});

3、mongoDb修复

有时mongoDb会因为一些错误而无法启动,这时就要对其进行修复

mongod --repair

二、mongoDb常用语句

1、查询库、查询表

show dbs  —  查询所有的数据库

show collections   —  查询当前数据库下的所有数据表

2、建库和删库

use myDbs  —  建立一个名为myDbs的数据库,当这个库存在时则是切换到这个数据库中去

use myDbs

db.dropDatabase();  —  这两句是删除这个数据库

3、建表和删表

表操作都是要先到一个数据库中去,通过use方法

db.myTable.insert({name:’hf’,age:20});  —  在mongodb中在插入数据时即创建了改表,此时创建的是名为myTable的数据表

db.myTable.drop();  —  删除myTable这个数据表

4、单表的增删改

db.myTable.insert({name:’hahaha’,age:12});  —  新增

db.myTable.update({name:’hf’},{$set:{age:25}})  —  修改,此处的操作相当于关系数据库中的 update myTable set age = 25 where name = ‘hf’

db.myTable.remove({name:’hf'});  —  删除,此处相当于关系数据库中的 delete myTable where name = ‘hf’

5、查询

db.myTable.find();  —  查询myTable中的所有数据

db.myTable.find().sort({age:1})  —  根据age升续

db.myTable.find().count();  —  查询

三、mongoose及其基本使用

  由于mongodb上手方便,所以经常作为nodeJS建站的数据库,而mongoose则是NodeJS中操作mongodb一个工具库。在mongoose中存在这么几种链接、调用方式主要包括Schema、Model、Entity这3种操作类,其中Schema则是以数据类型为形式的实体,它不具备操作数据库的能力,但是它定义了操作数据表中元素的名称和类型;而Model则是单个表的实体,通过表的名字以及Schema中标注的类型将一个表进行实例化;那么最后一个Entity可以认为是表中单行的实例对象,可以对单行进行简单的新增删改查的操作。

1、建立链接和Schema、Model

var mongoose = require(‘mongoose’);
/*开始获取数据库连接,此处部分为固定写法,
*其中myinfo是要操作数据库的名称*/
var con = mongoose.connect(‘mongodb://localhost/myinfo');
/*获取mongoose全局的Schema对象,方便对多个表进行实例化*/
var sche = mongoose.Schema;
/*构建所需表的Schema,此处就构建了一个stu表的文件*/
var stuSchema = new sche({
name:String,
age:Number
});
/*构建表所需的模型 Model*/
var stuModel = con.model(’Stu’,stuSchema);

2、新增

方式一:

/* 新增,新增操作需要构建一个表单行实例*/
var stuEntity = new stuModel({name:’hf’,age:2});
stuEntity.save(function(err){…});

方式二:

/* 新增,通过Model新增*/
var json = {name:’hf’ , age:1};
stuModel.create(json , function(error){…})

2、修改

var param = {name:’hf’};
var update = {$set:{name:’sfa’,age:26}};
stuModel.update(param , update , function(error){...})

3、删除

var param = {name:’hf’};
stuModel.remove(param , function(error){...})

mac上安装mongoDb以及简单使用的更多相关文章

  1. 在Mac上安装MongoDB,配置全局路径

    1.访问MongoDB官方下载地址 http://www.mongodb.org/downloads 2.点击“DOWNLOAD(tgz)”按钮: 3.将下载的文件压缩包解压后剪切到你的Mac中某个位 ...

  2. 在Mac上安装MongoDB

    1.访问MongoDB官方下载地址 http://www.mongodb.org/downloads 2.点击“DOWNLOAD(tgz)”按钮: 3.将下载的文件压缩包解压后剪切到你的Mac中某个位 ...

  3. Mac上安装MongoDB

    1.访问MongoDB官方下载地址 http://www.mongodb.org/downloads 2.点击“DOWNLOAD(tgz)”按钮: 3.将下载的文件压缩包解压后剪切到你的Mac中某个位 ...

  4. 【mongodb】如何在mac上安装mongoDB

    1.登入MongoDB的官网 选择发布的版本 网址:https://www.mongodb.com/download-center/community 2.下载tgz的包,解压缩 3.打开终端,配置环 ...

  5. mac上安装mongodb数据库教程

    1.官网下载压缩包,并解压到当地任一目录.(我的是Documents/develop/mongodb) 2.在mongodb下新建data文件夹,在data下新建db文件夹.(bin和data文件夹在 ...

  6. Mac上安装配置和简单使用PostgreSQL(仍然很不懂)

    因为想要使用推荐的rails-template.需要使用postgres.并初始化了一个用户postgres,密码是postgres.( e.g. $ createuser -d postgres ) ...

  7. Mac上安装配置Go语言,其实很简单(一)

    下载Go语言可以去:Go语言中文网 安装及自己选择是否修改GOPATH 下载下来后双击安装就好,使用 go version 查看安装版本: 在Mac上安装完成后,会自动设置一些环境变量,使用 go e ...

  8. Mac下安装 MongoDB

    Mac 下安装 MongoDB 一般有两种方法,一种是通过源码安装,一种是直接使用 homebrew ,个人推荐使用 homebrew ,简单粗暴. 1.安装 homebrew : /usr/bin/ ...

  9. mac 上安装服务,查看服务,重启和关闭

    首先了解下的Mac的 homebrew ,官网:https://brew.sh/index_zh-cn.html 简单的说: Homebrew 能干什么? 答:使用 Homebrew 安装 Apple ...

随机推荐

  1. nginx常用

    1.rewrite return 301 http://example.com$request_uri; rewrite ^ http://example.com permanent; 2.try_f ...

  2. Wannafly交流赛1 _A_有理数 【水】

    Wannafly交流赛1 A有理数 [水] 链接:https://www.nowcoder.com/acm/contest/69/A 来源:牛客网 题目描述 有一个问题如下: 给你一个有理数v,请找到 ...

  3. linux例行性工作调度学习(一)

    Linux系统中有一种例行性工作(crontab)可以调度,是通过crontab和at来实现的. 这两种工作调度: 一种是例行性的,就是每隔一定的周期要来办的事项. 一种是突发性的,就是这次做完以后就 ...

  4. rpm命令,yum命令大全

    rpm 执行安装包二进制包(Binary)以及源代码包(Source)两种.二进制包可以直接安装在计算机中,而源代码包将会由RPM自动编译.安装.源代码包经常以src.rpm作为后缀名. 常用命令组合 ...

  5. vs2012编译cocos2dx 3.10报错解决方法

    新建的一个cocos工程没有改过任何代码直接编译居然报错了? 百度了一下原来是因为vs2012不支持c++11的部分特性 cocos2dx 3.10正好就用到了vs2012不支持的那部分特性,所以报错 ...

  6. [转]从程序员到CTO的Java技术路线图

    原文链接:http://zz563143188.iteye.com/blog/1877266 在技术方面无论我们怎么学习,总感觉需要提升自已不知道自己处于什么水平了.但如果有清晰的指示图供参考还是非常 ...

  7. js自执行函数&扩展方法

    我们通常将JS代码写在一个单独的JS文件中,然后在页面中引入该文件.但是,有时候引入后会碰到变量名或函数名与其它JS代码冲突的问题.那么如何解决这个问题呢?作用域隔离.在JS中,作用域是通过函数来划分 ...

  8. 20145219 《Java程序设计》实验四 Android开发基础设计实验报告

    20145219 <Java程序设计>实验四 Android开发基础设计实验报告 实验内容 安装Andriod Studio并配置软件 使用Andriod Studio软件实现Hello ...

  9. Book Review of “The practice of programming” (Ⅱ)

    The practice of programming Chapter 2 Algorithms and Data Structures Searching sequential search (li ...

  10. 华为交换机S5700系列配置镜像端口(1:1)

    配置本地镜像口(1:1) 组网需求 如图一所示,某公司行政部通过Switch与外部Internet通信,监控设备Server与Switch直连. 现在希望通过Server对行政部访问Internet的 ...