当前位置:
首页
文章
后端
详情

python怎么向MongoDB插入时间字段

MongoDB是一个比较常见的非关系型数据库,在很多地方都有引用。很多小伙伴也会用它来进行数据的存储。但是普通的文本和数据在存储上比较简单,而时间字段却是与它们不同的,新手可能会对此感到疑惑,那么接下来这篇文章我们就来介绍python怎么操作MongoDB插入时间字段吧。

看代码吧~

import pymongo
from dateutil import parser
dateStr = "2019-05-14 01:11:11"
myDatetime = parser.parse(dateStr)
client = pymongo.MongoClient(host="127.0.0.1", port=27017)
db = client["test"]
db.ceshi.insert({"date": myDatetime})
client.close()

补充:python连接mongodb插入数据及设置数据类型

安装 Python MongoDB 驱动程序

安装驱动

pip install pymongo

检查

在python交互模式中,执行下面的语句

import pymongo
pymongo.version

创建连接

确定 MongoDB 连接串

使用驱动连接到 MongoDB 集群只需要指定 MongoDB 连接字符串即可。

mongodb://数据库服务器主机地址:端口号
mongodb://127.0.0.1:27017

初始化数据库连接

import pymongo
client = pymongo.MongoClient('mongodb://127.0.0.1:27017')

数据库操作

初始化数据库和集合

db = client.admin
# 认证,如果没有设置用户名和密码可以忽略此项
db.authenticate('root','password')
# 集合,没有则创建
collection = db[friend]
# 或
collection = db.friend
# 如果集合名有-存在,在python里识别不了,所以建议用[]的方式

插入一条新的用户数据

插入数据

new_friend = {
      "_id": "4519678129565659554",
      "user_id": "4519678129565659555",
      "friend_user_id": "4519678129565659556",
      "remark": "",
      "add_time": "2020-07-07T00:39:31.961Z"
      }
collection.insert_one(new_friend)

在mongo shell中查看

use admin
db.auth("root","password")
show tables;
db.friend.find({})
-- { "_id" : "4519678129565659554", "user_id" : "4519678129565659555", "friend_user_id" : "4519678129565659556", "remark" : "", "add_time" : "2020-07-07T00:39:31.961Z" }

设置数据的类型

mongo有很多种数据类型,这里主要说一下int64和日期时间

int64,依赖bson

pip install bson

日期时间,依赖parser

pip install python-dateutil
import bson
from dateutil import parser
aa = {
      "_id": bson.int64.Int64("4519678129565659557"),
      "user_id": bson.int64.Int64("4519678129565659558"),
      "friend_user_id": bson.int64.Int64("4519678129565659559"),
      "remark": "",
      "add_time": parser.parse("2020-07-07T00:39:31.961Z"),
      "_class": "com.aihangxunxi.common.entity.mongo.FriendRelationShip"
      }
collection.insert_one(aa)

在mongo shell中查看

db.friend.find({})
-- { "_id" : NumberLong("4519678129565659557"), "user_id" : NumberLong("4519678129565659558"), "friend_user_id" : NumberLong("4519678129565659559"), "remark" : "", "add_time" : ISODate("2020-07-07T00:39:31.961Z") }

以上就是python怎么操作MongoDB插入时间字段的全部内容,希望能给大家一个参考,也希望大家多多支持W3Cschool。



免责申明:本站发布的内容(图片、视频和文字)以转载和分享为主,文章观点不代表本站立场,如涉及侵权请联系站长邮箱:xbc-online@qq.com进行反馈,一经查实,将立刻删除涉嫌侵权内容。

同类热门文章

深入了解C++中的new操作符:使用具体实例学习

C++中的new操作符是动态分配内存的主要手段之一。在程序运行时,我们可能需要动态地创建和销毁对象,而new就是为此提供了便利。但是,使用new也常常会引发一些问题,如内存泄漏、空指针等等。因此,本文将通过具体的示例,深入介绍C++中的new操作符,帮助读者更好地掌握其使用。


深入了解C++中的new操作符:使用具体实例学习

怎么用Java反射获取包下所有类? 详细代码实例操作

Java的反射机制就是在运行状态下,对于任何一个类,它能知道这个类的所有属性和方法;对于任何一个对象,都能调用这个对象的任意一个方法。本篇文章将通过具体的代码示例,展示如何通过Java反射来获取包下的所有类。


怎么用Java反射获取包下所有类? 详细代码实例操作

了解Java中的volati关键字的作用 以及具体使用方法

本篇文章将和大家分享一下Java当中的volatile关键字,下面将为各位小伙伴讲述volatile关键字的作用以及它的具体使用方法。


了解Java中的volati关键字的作用 以及具体使用方法

Java Map 所有的值转为String类型

可以使用 Java 8 中的 Map.replaceAll() 方法将所有的值转为 String 类型: 上面的代码会将 map 中所有的值都转为 String 类型。 HashMap 是 Java

Java Map 所有的值转为String类型

员工线上学习考试系统

有点播,直播,在线支付,三级分销等功能,可以对学员学习情况的监督监控,有源码,可二次开发。支持外网和局域网私有化部署,经过测试源码完整可用!1、视频点播:视频播放,图文资料,课件下载,章节试学,限时免

员工线上学习考试系统