欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

MongoDB怎么导入csv文件?乱码怎么解决?数据类型怎么批量修改?

程序员文章站 2022-06-01 14:10:16
...

MongoDB导入csv文件只需要用下面这条命令即可:

mongoimport --host ip:port -u 用户名 --authenticationDatabase=库名 --type csv --headerline --db 库名 --collection 集合名 --file csv文件路径

MongoDB导出csv文件:

mongoexport -h ip -u 用户名 -p 密码 --port 端口 -d 库名 -c 表名 --query '' --fields="字段名" --type=csv -o 路径

导入csv后,可能会出现乱码。如果是这样,需要先把csv文件用Notepad++打开,修改格式为 utf-8-BOM 编码,如下图:

MongoDB怎么导入csv文件?乱码怎么解决?数据类型怎么批量修改?


如果mongodb 需要修改字段数据类型:

db.col.find({id:{$type:16}}).forEach(function(doc) {
doc.id=doc.id + "";   // 用new string(doc.id)就变成了文档,不知道为什么
db.col.save(doc);
})

脚本介绍:
col是表名称
{id:{$type:16}}表示id字段必须是int类型  16
doc.id=doc.id + "";修改id字段类型,变为string类型
db.col.save(doc);保存修改后的字段信息

MongoDB中的每个数据类型都有一个唯一的编号:

Datatype Number Description
Double 1 Used to stored floating point values
String 2 Commonly used datatype and it is UTF-8 valid
Object 3 Used for storing embedded objects
Array 4 Used for storing embedded objects
Binary Data 5 Used to store binary data
Undefined 6 Used to store undefined value
Object Id 7 Used to store document's ID
Boolean 9 Used to store Boolean value
Date 10 Used to store current date time in UNIX format.
Null 11 Used to store null value
Regular Expression 12 Used to store regex
Javascript 13 Used to store JavaScript data without scope
Symbol 14 Basically used to store string, but reserved for languages that use specific symbol
Javascript with scope 15 Used to store JavaScript data with scope
Integer 16 & 18 Used to store numerical value
Timestamp 10 Used to track when a document is modified.
Min/Max Key 255/127 Used to compare value against lowest and highest BSON elements