在mongodb中,我们给每个文档插入数据的时候,mongodb自动会为我们插入的数据创建数据类型。由于mongodb是一个非结构化的数据存储系统,因此在文档中你可以随意插入不同类型的字段,这和MySQL有很大的区别(MySQL是结构化类型存储,要求对应的字段的数据类型相同)。在mongodb的图形化管理页面,来看看数据库中字段所对应的数据类型。

由于有数据类型的存在,这就要求我们在使用的mongodb查询的时候需要注意一些情况了。例如在通过form_id 查询一些数据时就应该注意。我们从上面可以看出,form_id 是一个整型,因此我们在使用mongodb查询的时候就应该注意传给form_id的数据应该为一个整型数据。

例如,我在使用数组进行查询的时候,就犯了这个错误。

$form_id_arr = explode(',', $form_id);

var_dump($form_id_arr);//explode()处理之后,数组中的值为字符串类型,但是mongodb中对于数据的类型十分的严格,form_id 对应的类型为整型,因此数组中的值也要转换成整型

for ($i=0; $i

$form_id_arr[$i]=intval($form_id_arr[$i]);

}

var_dump($form_id_arr);

假如我从前台获取的form_id 是一个字符串 ”99,98,97,96“ 如果直接使用explode() 进行转换成数组,再去查询,其实是错误的,因为数组中存入的是数字字符串,不是一个整型的数据。

在此强烈建议利用var_dump()函数来进行变量的打印,它能够打印出每个数据的类型。

我分别在for循环处理之前与之后分别进行了打印。

看一下打印的结果。

可以很明显的发现,转换之后的数组才是我查询所需要的数组。

end

mongodb mysql数据类型_mongodb中数据类型的坑相关推荐

  1. 15_clickhouse,MySQL引擎;MySQL和ClickHouse中数据类型的对应关系

    20.MySQL引擎 20.1.MySQL引擎 20.2.MySQL和ClickHouse中数据类型的对应关系 20.3.示例 20.MySQL引擎 20.1.MySQL引擎 MySQL引擎可实现对M ...

  2. mysql char 50_MySQL中数据类型varchar(50)和char(50)是完全相同的。

    [填空题]用在子查询前,用于判断子查询结果不为空集的特殊判断词是___. [单选题]下列哪项不属于单片机最小系统组织部分? [简答题] [单选题]根据皮亚杰的认知发展理论,13岁幼儿处于( )阶段 [ ...

  3. mongodb mysql配置_mongoDB数据库原生配置

    最近小冷在工作中使用到了mongoDB数据库,所以就简单的写了个demo,和大家简单分享下,如果大家也有想分享的东西或者需要分享的东西,生活或者其他都行,可以关注小冷公众号秦川以北或者加小冷微信qxy ...

  4. mongodb mysql 事务_MongoDB数据库两阶段提交实现事务的方法详解 _ 蚂蚁视界

    本文实例讲述了MongoDB数据库两阶段提交实现事务的办法.分享给年夜家供年夜家参考,详细如下: MongoDB数据库中操作单个文档老是原子性的,然而,涉及多个文档的操作,通常被作为一个"事 ...

  5. mongodb mysql 写_MongoDB与MySQL关于写确认的异同

    云妹导读: 所谓写确认,是指用户将数据写入数据库之后,数据库告知用户写入成功的一个概念.根据数据库的特点和配置,可以在不同的写入程度上,返回给用户,而这其中,就涉及到了不同的性能.数据安全等级以及数据 ...

  6. mongodb MySQL主从_MongoDB实战系列之三:MongoDB的主从部署

    主从同步: md01    10.0.0.11        master md02    10.0.0.12        slave md03    10.0.0.14        slave ...

  7. mongodb mysql并发_MongoDB:锁和并发控制

    MongoDB:锁和并发控制 本文主要介绍两部分内容,第一部分是MongoDB的锁,第二部分是MongoDB的并发控制.这都跟MongoDB性能和效率相关的,有助于在使用MongoDB过程中,知道哪些 ...

  8. mongodb mysql配置_Mongodb 配置

    Mongodb数据的操作方式 1,安装好momgodb后打开cmd 进入mongodb安装的bin目录, 输入你要将数据库数据保存的路径(例如: D:\mongodb\data\db) 如图: 回车如 ...

  9. double类型占几个字节_MongoDB 中的数据类型

    1 JSON 与 BSON MongoDB 是文档数据库,什么是文档呢?如果你看了之前的文章相信你已经有些概念了,这里的文档不是指 Word.PDF 这样的文档,而是类似 JSON(JavaScrip ...

最新文章

  1. 5.6 matlab曲线拟合案例(股票预测问题、算法的参数优化问题)
  2. 使用JDBC,完成对如下表的增删改查操作
  3. linux加密框架 crypto 算法管理 - 应用角度讲解加密框架的运行流程
  4. 现代软件工程系列 学生和老师都不容易
  5. STM32 - 定时器基础应用说明 - 04 - N-pulse waveform generation using one-pulse mode - 用OPM模式产生N次脉冲
  6. linux上mysql卸数_Linux下MySQL卸载和安装图文教程
  7. cs寄存器 x86 特权模式_Windows操作系统管理进程和线程:内核模式和用户模式
  8. 【数字图像处理系列二】基本概念:亮度、对比度、饱和度、锐化、分辨率
  9. 同义词相似度可以怎样计算
  10. PHP 的oop思想
  11. TeamViewer正版许可证到底多少钱?
  12. excel多级联动和不规则分组转置
  13. Excel 2010 VBA 入门 109 获取某列最后非空单元格行号
  14. 2020你必须掌握的CSS特效~建议收藏
  15. P4556 雨天的尾巴 线段树合并
  16. Python相似度计算【大总结】
  17. 京东到家定位系统演化
  18. Python 模拟登录知乎
  19. 奇奇怪怪的大佬:从职业赌徒到互联网大佬
  20. #第六章 四维股市理论数学模型基础6.1四维股市拟合理论的数学基础

热门文章

  1. SplitContainer如何实现左导航,右显示与导航相关内容
  2. terminal登录mysql_转载-MySQL之终端(Terminal)管理MySQL
  3. 开放防火墙的端口号mysql_linux下mysql开启远程访问权限及防火墙开放3306端口
  4. python pandas处理无限值inf
  5. python判断某一天是周几
  6. java对csv格式的读写操作
  7. 逆波兰计算器android源码简书,汪都能理解的逆波兰计算器(C++实现)
  8. 因为计算机中丢失ssce5432.dll,ssce5432.dll 64位
  9. 检测php常量是否存在,php判断变量常量是否存在_PHP教程
  10. 【前端必备】七、页面性能优化