mysql curd操作_(四):CURD操作详解(增删改查)
基本操作:增删改查
一、增
增: insert
介绍: mongodb存储(单位)的是文档,. 文档是json格式的对象.
语法: db.collectionName.isnert(document);
1、增加单篇文档
db.collectionName.insert({title:’nice day’});
2、增加单个文档,并指定_id
db.collectionName.insert({_id:8,age:78,name:’lisi’});
3、增加多个文档
db.collectionName.insert(
[
{time:'friday',study:'mongodb'},
{_id:9,gender:'male',name:'QQ'}
]
)
二、删
删:remove
语法: db.collection.remove({}查询表达式}, 选项);
选项是指 {true/false},是否只删一行, 不写默认为false
注意
1: 查询表达式依然是个json对象
2: 查询表达式匹配的行,将被删掉.
3: 如果不写查询表达式,collections中的所有文档将被删掉.(db.stu.remove({});)
例1: db.stu.remove({stunum:’001’});
删除stu表中 sn属性值为’001’的文档
例2: db.stu.remove({gender:’f’});
删除stu表中gender属性为f的文档,删除符合的所有行.
例3: db.stu.remove({gender:’f’},true);
删除stu表中gender属性为f的文档,只删除一行
.
三、改
改 update操作
改谁? --- 查询表达式
改成什么样? -- 新值 或 赋值表达式
操作选项 ----- 可选参数
语法: db.collection.update(}查询表达式},{新值},{选项option});
例:
db.news.update({name:'QQ'},{name:'MSN'});
是指选中news表中,name值为QQ的文档,并把其文档值改为{name:’MSN’},
结果: 文档中的其他列也不见了,改后只有_id和name列了.修改的那列的其他东西也没有了
即--新文档直接替换了旧文档,而不是修改
如果是想修改文档的某列,可以用$set关键字
db.collectionName.update(query,{$set:{name:’QQ’}})
修改时的赋值表达式
$set 修改某列的值
$unset 删除某个列
$rename 重命名某个列
$inc 增长某个列
$setOnInsert 当upsert为true时,并且发生了insert操作时,可以补充的字段.
{
name:'wukong',
jingu:true,
sex:'m'age:500}
需求:修改name为dzsff
去掉jingu
将sex重命名为gender
将age自增一岁
(
$set:{name:'dzsff'},
$unset:{jingu:1},
$rename:{sex:'gender'},
$inc{age:16}
)
db.stu.update({name:'wukong'},{$set:{name:'dzsff'},$unset:{jingu:1},$rename:{sex:'gender'},$inc:{age:16}});
上面的 $setOnInsert要与option一起使用:
$setOnInsert 当upsert为true时,并且发生了insert操作时,可以补充的字段.
option的作用:
{upsert:true/false,multi:true/false}
1、upsert---是指没有匹配的行,则直接插入该行.(和mysql中的replace一样)
例:db.stu.update({name:'wuyong'},{$set:{name:'junshiwuyong'}},{upsert:true}); 如果没有{upsert:true}时,先查看表达式符合则修改,没有也不添加
如果有name=’wuyong’的文档,将被修改
如果没有,将添加此新文档
2、multi: 是指修改多行(即使查询表达式命中多行,默认也只改1行,如果想改多行,可以用此选项)
例:
db.stu.update({gender:'m'},{$set:{gender:'male'}},{multi:true});
则把stu中所有gender:'m'的文档,都修改
四、查
查: find, findOne
语法: db.collection.find(查询表达式,查询的列);
db.collections.find(表达式,{列1:1,列2:1});
例1:db.stu.find()
查询所有文档 所有内容
例2: db.stu.find({},{gender:1})
查询所有文档,的gender属性 (_id属性默认总是查出来,默认所有都查出来(有无性别都被查出来))
例3: db.stu.find({},{gender:1, _id:0})
查询所有文档的gender属性,且不查询_id属性
例3: db.stu.find({gender:’male’},{name:1,_id:0});
查询所有gender属性值为male的文档中的name属性
mysql curd操作_(四):CURD操作详解(增删改查)相关推荐
- python单链表操作_单链表的创建、增删改查等操作(Python实现)
单链表的创建.增删改查等操作(Python实现) # 单链表 class Node: def __init__(self, elem): self.elem = elem self.next = No ...
- java从入门到精通二十四(三层架构完成增删改查)
java从入门到精通二十四(三层架构完成增删改查) 前言 环境准备 创建web项目结构 导入依赖和配置文件 创建层次模型 实现查询 实现添加 实现修改 完成删除 做一个用户登录验证 会话技术 cook ...
- java mysql分层_java-数据库连接,分层实现增删改查测试
packagecom.zhidisoft.dao;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.Resul ...
- Spring Boot 学习[四] web项目实战训练(增删改查,分页,排序)
Spring boot非常适合Web应用程序开发.您可以轻松创建自包含的HTTP应用.web服务器采用嵌入式Tomcat,或者Jetty等. 几点说明: Spring boot开发web项目,通常打成 ...
- GZFramwork数据库层《四》单据主从表增删改查
同GZFramwork数据库层<三>普通主从表增删改查 不同之处在于:实例 修改为: 直接上效果: 项目源码下载地址:https://github.com/GarsonZhang/GZFr ...
- 【02】Java进阶:18-MySQL基础、数据库概述、数据库的安装/卸载/启动/登录、SQL概述、DDL操作数据库、DDL操作表、DML增删改查、
day18-MySql基础 今日内容 数据库概述 数据库安装和卸载 SQL语句 DDL-----操作数据库,操作表 DML-----操作记录(增删改) DQL------操作记录(查) 学习目标 能够 ...
- HBase--JavaAPI的操作,创建表修改表,增删改查数据
DDL: public class HbaseClientDemo {Connection conn = null;@Beforepublic void getConn() throws Except ...
- mysql如何修改学生表_MySQL 详细单表增删改查crud语句
MySQL 增删改查语句 1.创建练习表 这里练习表没有满足三范式 第一范式(又称 1NF):保证每列的原子性 数据表中的每一列(字段),必须是不可拆分的最小单元,也就是确保每一列的原子性.满足第一范 ...
- pymysql语法_如何使用PyMySQL模块进行增删改查?
PyMySQL模块进行增删改查的操作.简单来讲,核心步骤有两步:链接数据库,读取CSV文件并导入数据表,然后查询数据,将数据表和计算结果导出为CSV文件.下面一起来具体看看吧~ Step1:安装PyM ...
- mysql sqlsugar_.net core +mysqlSugar(最为简单的增删改查)
首先建立.net Core API - empty 这个就不说了 然后创建新的Controller 记得添加路由 [Route("api/Users")] 然后在Nuget Pac ...
最新文章
- group by是否会用到索引_平时工作中经常用到的SQL,这些你都知道吗?
- 英特尔更新人工智能产品线,新品性能达到竞品6倍
- 2021-10-11 二叉树中查找值为key的结点
- Go的遍历map与slice的区别:map无序slice有序
- 团队作业_1_博客1(分工理解)
- 进程间通信之共享内存
- vs2005 pro 在浏览器查看下的一个问题!
- 9种让肌肤美白的简单方法 - 生活至上,美容至尚!
- ios项目 swift 定义常量 其他文件引用_面试应该注意的Swift知识点
- Python 面向对象高级编程——定制类
- 深度学习模型训练的一般方法(以DSSM为例)
- 一个光标绘制问题的解决过程
- C语言图书借阅管理系统
- R语言使用:符号生成向量数据、使用pie函数可视化饼图、自定义设置饼图色彩为彩虹色
- 九度1035 -树 - 找出直系亲属
- 生命以负熵为生:Web3行业2022年之怪现象
- CentOS中利用iso介质来安装软件
- NYoj 239 :月老的难题(二分图最大匹配)
- 100天精通Python(基础篇)——第19天:练习题:我要买票吗
- 2021-07-28
热门文章
- java quartz 时间配置文件_Spring Quartz如何动态配置时间(3)
- python bool类型_Python 的内置数值类型
- Redis设置外网可访问
- httpClient 超时时间设置
- qt 删除文件夹_Qt 贪吃蛇制作(含源码)
- 循环中 动态参数 传div 层_【转载】黄学杰等:铌元素在锂离子电池中的应用
- cs224n上完后会会获得证书吗_斯坦福NLP组-CS224n: NLP与深度学习-2019春全套资料分享...
- 方差分析 球形检验_重复测量数据的方差分析
- php集成阿里MNS消息服务
- 一位Java大牛的BAT面试心得与经验总结,挥泪整理面经