「MongoDB Shellの使い方」を編集中

ナビゲーションに移動 検索に移動

警告: ログインしていません。編集を行うと、あなたの IP アドレスが公開されます。ログインまたはアカウントを作成すれば、あなたの編集はその利用者名とともに表示されるほか、その他の利点もあります。

この編集を取り消せます。 下記の差分を確認して、本当に取り消していいか検証してください。よろしければ変更を保存して取り消しを完了してください。

最新版 編集中の文章
1行目: 1行目:
 
+
== 概要 ==
MongoDB Shellとは、MongoDB標準搭載の対話型クライアントである。主になんでもかんでも[[CUI]]で操作したい人、[[SSH]]などで[[サーバー]]を管理する人が使うものである。似たようなものに公式GUIツールの「[[MongoDB Compass]]」というのもあるよ。
+
MonogoDBシェルはMongoDB標準搭載の対話型クライアントである。
 
+
データの検索や更新はもちろん、システム管理などもこれで行うことができる。
MongoDB Shellではデータの検索や更新はもちろん、システム管理などもこれで行うことができる。特徴としてはいわゆる「クエリ」や「コマンド」と呼ばれるものがMonoDBシェルでは[[JavaScript]]ベースの[[言語]]となっている。このためforループでテストデータを簡単に用意できたりする。
+
特徴としてはいわゆる「クエリ」や「コマンド」と呼ばれるものがMonoDBシェルではJavaScriptベースの言語となっている。
  
 
== 起動 ==
 
== 起動 ==
30行目: 30行目:
  
 
データベースを切り替えるには「use <db>」コマンドを利用する。その際に指定した名前のデータベースがなければ新規作成される(正確には1件目のデータ格納時に生成される)。
 
データベースを切り替えるには「use <db>」コマンドを利用する。その際に指定した名前のデータベースがなければ新規作成される(正確には1件目のデータ格納時に生成される)。
  > use myDatabase
+
  > use test2
  switched to db myDatabase
+
  switched to db test2
 
 
1件目のデータを格納してみる(この瞬間にデータベースが新規作成される)。
 
> db.myCollection.insertOne( { x:1 } );
 
{
 
"acknowledged" : true,
 
"insertedId" : ObjectId("5965c10c16d9ca6548464300")
 
}
 
 
 
備考
 
* db
 
*: 常に「現在のデータベース」を示す予約変数。なお、db.getSiblingDB()メソッドを使えばdb変数を変化させずに別データベースのインスタンスを取得することもできる。
 
* myCollection
 
*: MongoDB独自概念の「コレクション」と呼ばれるものでRDBでいう「テーブル」に相当する。これも存在しなければ1件目のデータ格納時に勝手に作られる。
 
コレクション名はそのままdb変数のプロパティ名になる。なお、コレクション名にはスペースやハイフンを含めることができる。しかし、JavaScriptの変数名にスペースやハイフンを含めることはできない。そのような名前を使う場合は以下のように記述する。基本的には全部同じ意味である。
 
 
 
一般的なコレクションへのアクセス(プロパティ)。
 
> db.myCollection.find();
 
{ "_id" : ObjectId("5965c10c16d9ca6548464300"), "x" : 1 }
 
 
 
コレクション名にハイフンやスペースが含まれている場合(連想配列)。
 
> db['myCollection'].find();
 
{ "_id" : ObjectId("5965c10c16d9ca6548464300"), "x" : 1 }
 
または(getCollectionメソッド)。
 
> db. getCollection('myCollection').find();
 
{ "_id" : ObjectId("5965c10c16d9ca6548464300"), "x" : 1 }
 
 
 
=== 注意事項 ===
 
mongodbシェルでデータ取得の際に1行あたり4095[[コードポイント]]以上の文字列はカットされるという[[仕様]]がある。
 
クソ長い文字列なんかを扱う場合は別のクライアントを使ったほうがいい。
 
 
 
[[category: MongoDB]]
 

MonoBookへの投稿はすべて、他の投稿者によって編集、変更、除去される場合があります。 自分が書いたものが他の人に容赦なく編集されるのを望まない場合は、ここに投稿しないでください。
また、投稿するのは、自分で書いたものか、パブリック ドメインまたはそれに類するフリーな資料からの複製であることを約束してください(詳細はMonoBook:著作権を参照)。 著作権保護されている作品は、許諾なしに投稿しないでください!

このページを編集するには、下記の確認用の質問に回答してください (詳細):

取り消し 編集の仕方 (新しいウィンドウで開きます)