-- 在关系型数据库中创建数据库需要显式使用SQL语句创建 mysql> create database 数据库名; -- 在关系型数据库中切换数据库使用use关键字 mysql> use 数据库名;
在MongoDB中创建数据库不需要显式创建,即不需要自己去主动创建数据库,直接切换到你要创建的数据库即可。
什么时候MongoDB才会创建数据库,use之后数据库并不会创建,只有在第一次往数据库中的某一个表中插入数据时此时才会创建数据库,可以通过命令 show dbs
来查看所有数据库列表。
use 数据库名
删除数据库需要先切换到要删除的数据库,然后使用命令来删除数据库。db 是一个变量,表示当前数据库。
mysql> USE test_db; Database changed mysql> CREATE TABLE tb_user( id INT(11), username VARCHAR(25), age INT(11) );
MongoDB创建集合有两种方式,一种是 隐式创建,一种是显式创建。
隐式创建集合就是不需要自己主动去创建集合,而是当第一次向集合中插入数据时,MongoDB会根据BSON中的字段和字段值的数据类型去自动创建表结构。可以通过命令 show tables
或者 show collections
来显示当前数据库下的所有表。
一把情况下都会使用隐式创建表结构,只有在非常特殊的情况下才会显式的创建表结构。
一般使用到显示创建集合了肯定会用到一些配置选项,使得整个集合的数据拥有一些特性,如固定集合(可以指定集合存储数据的大小和最多允许存储的条数,当固定集合文档条数达到上限时,再插入新的文档会将最老的文档删除掉,然后插入到该位置)。如果不用配置选项这和隐式创建没什么区别。
db.createCollection("集合名字", 可选配置) # capped 表示固定大小,max:超过该值就会触发删除老值, size:目前还不清楚该配置的作用 db.createCollection("address", {capped: true, size: 5, max:2})
删除集合使用 db.集合名字.drop()
db.address.drop()