shell:
创建/切换数据库
命令:use 数据库名
解析:如果数据库存在,则切换到指定数据库,若不如在则创建数据库。
查询所有数据库
命令:show dbs
解析:此命令只能查看数据库中有表数据(聚集集合数据)存在的数据库, 如果使用use 数据库 名创建数据库后直接使用show dbs命令是无法查看到新建的数据库的,需要在新的数据库中创建一个表数据(聚集集合数据)。
创建表数据(聚集集合数据)
命令:db.users.save({name:"diqi",age:20,sex:true})
解析:添加数据数据列(创建数据库,并添加数据列后,可用show dbs命令查看数据库)
删除当前数据库:
命令:db.dropDatabase()
解析:需使用use命令切换到要删除的数据库,再使用db.dropDatabase()进行删除。
查看表数据
命令:db.表名.find();
解析:相当于 select * from 表名
修改表数据
命令:db.表名.update({age:25},{$set,{name:"diqi"}},false,true);
解析:相当于 update 表名 set name='diqi' where age=25
删除表数据
命令:db.表名.remove({age:123})
解析:相当于delete 表名 where age=123
java:
创建数据库连接
MongoClient client = new MongoClient("127.0.0.1",27017);
获取数据库连接
DB db = client.getDB("数据库名");
获取表
DBCollection teacher_collection = db.getCollection("表名");
//创建一个集合
public void add(){
DBObject dbo1 = new BasicDBObject();
dbo1.put("name", "xxlong");
dbo1.put("age", 100);
List<String> list = new ArrayList<String>();
list.add("stu1");
list.add("stu2");
dbo1.put("student",list);
DBObject dbo2 = new BasicDBObject();
dbo2.put("book", "java");
dbo1.put("course",dbo2);
teacher_collection.insert(dbo1);
DBObject db3 = new BasicDBObject();
DBObject db4 = new BasicDBObject();
//批量插入
List<DBObject> listdbo= new ArrayList<DBObject>();
listdbo.add(db3);
listdbo.add(db4);
teacher_collection.insert(listdbo);
}
//创建集合(接插入JSON格式数据)
public static void addjson(){
String json = "{ 'name' : 'xxlong4', 'age' : 104,'student' : [ 'stu1', 'stu2' ], 'course' : { 'book' :'c++' } }";
DBObject dbObject =(DBObject) JSON.parse(json);
teacher_collection.insert(dbObject);
}
//删除第一个document
public void delfrist(){
DBObject dbo_delfirst = teacher_collection.findOne();
teacher_collection.remove(dbo_delfirst);
}
//删除指定的document
public void delzhidign(){
DBObject dbo_specify = new BasicDBObject();
//指定的_id
dbo_specify.put("_id", new ObjectId("592e5305e2755b89e2a91fc1"));
Object ob=teacher_collection.remove(dbo_specify);
System.out.println(ob);
}
//修改集合根据ID
public void upd(){
DBObject dbo_new = new BasicDBObject();
dbo_new.put("name", "2222");
dbo_new.put("age",222222222 );
dbo_new.put("score", 222);
teacher_collection.update(new BasicDBObject().append("_id", new ObjectId("592e59bfe27537140cf44026")), dbo_new);
}
/**
* 保存图片
*/
public void saveimg(){
//保存图片,在xxlong_db下生成了bucket.chunks和bucket.files
GridFS gfs_bucket = new GridFS(db,"bucket111");
GridFSInputFile gfsFile1 = null;
try {
gfsFile1 = gfs_bucket.createFile( new File("src/img/1.jpg"));
GridFSInputFile gfsFile2 = gfs_bucket.createFile( new File("src/img/3.jpg"));
gfsFile1.setFilename("p23422660.jpg");
gfsFile2.setFilename("110.png");
gfsFile1.save();
gfsFile2.save();
} catch (IOException e) {
e.printStackTrace();
}
}