MongoDBでデータベースを作成する方法
MongoDBは、「database」を作成するコマンドを提供しませんでした。 実際に、手動で作成する必要はありません。MangoDBは、定義済みのコレクション(またはSQLのテーブル)およびデータベースに値を初めて保存するときに、オンザフライで作成するためです。
SQLバックグラウンドの開発者にとって、データベース、テーブルを作成し、テーブルに値を手動で挿入する必要があります。 MongoDBでは、作成するものに言及する必要はありません。選択したデータベースの下で定義済みのコレクション(テーブル)に値を初めて保存すると、MangoDBは値、コレクション、データベースを自動的に作成します。
Note
MongoDBには、コレクションを手動で作成するための「db.createCollection()
」が含まれていますが、データベースは含まれていません。
このガイドでは、MongoDBがデータベースとコレクションを作成する方法とタイミングを示します。
1. すべてのデータベースを表示
「show dbs
」を発行して、使用可能なすべてのデータベースを表示します。
MongoDB shell version: 1.8.1 connecting to: test > show dbs admin 0.03125GB local (empty)
現在、「admin」と「local」の2つのデータベースのみが使用可能です。
2. データベース名を定義する
「use new-databasename
」を発行して、デフォルトのデータベースからデータベースを定義するように切り替えます(存在しないデータベース名でも機能します)。 ただし、MangoDBは、何かを内部に保存するまで、まだデータベースを作成しません。
> use exampledb switched to db exampledb > show dbs admin 0.03125GB local (empty)
P.S Database “exampledb” is not created yet.
3. それを保存
「users」という名前のコレクションを定義し、その中にダミーのドキュメント(値)を保存します。
> db.users.save( {username:"example"} ) > db.users.find() { "_id" : ObjectId("4dbac7bfea37068bd0987573"), "username" : "example" } > > show dbs admin 0.03125GB local (empty) exampledb 0.03125GB
これは、「このドキュメント(値) ‘{username:"example"}
‘を ‘user’コレクションに保存する」という意味です。 この「保存」操作が実行されると、MangoDBは「user」コレクションと「exampledb」データベースを自動的に作成します。