MongoDBå ¥é â åå1ä»¶ã§ããã¥ã¡ã³ããšCRUDã詊ãã
ååã1æã®ã«ãŒãã«ãŸãšãã
- Atlasã®æ¥ç¶æºåãæŽçãã
- 1ä»¶ãç»é²ã»æ€çŽ¢ã»æŽæ°ã»åé€ãã
- æè»ãªæ§é ãšæ€èšŒã«ãŒã«ãåºå¥ãã
æåã®ãŽãŒã«ïŒãããã®ã«ãŒãã1ææäœãã
MongoDBã§ã¯ãé¢é£ããå€ãããã¥ã¡ã³ããšããŠãŸãšããããŸããä»åã¯ãããã»200åã»èµ€ãäžã€ã«ããCRUDïŒäœæã»èªã¿åãã»æŽæ°ã»åé€ïŒã詊ããŸãã
{
"name": "ããã",
"price": 200,
"colors": ["èµ€"]
}
æååã»æ°å€ã»é åãåãããã¥ã¡ã³ãã«å ¥ããŠããŸããBSONã¯JSONã«äŒŒãææžè¡šçŸã«å ããæ¥ä»ãªã©ã®åãæ±ããŸãã
Atlasã§æ¥ç¶æºåããã
ãã®æé ã¯Atlasã®ã¢ã«ãŠã³ããšãMongoDB ShellïŒmongoshïŒãå¿
èŠã§ãããã©ã³ãæéãå©çšå¯èœãªæ§æã¯äœæç»é¢ã§ç¢ºèªããŸãã
- æ°ããç·Žç¿çšãããžã§ã¯ãã§DBã®æ¥ç¶å ãçšæããŸããæ¬çªããŒã¿ã¯äœ¿ããŸããã
- DBãŠãŒã¶ãŒãäœããŸããAtlasã®ãã°ã€ã³ã¢ã«ãŠã³ããšã¯å¥ã§ããç·Žç¿DBã ããèªã¿æžãã§ããæš©éãšãæšæž¬ããã«ãããã¹ã¯ãŒããèšå®ããŸãã
- IP access listãžèªåã®çŸåšã®å ¬éIPã远å ããŸããå¯èœãªãäžæçãªèš±å¯ã䜿ããŸãã
- Connectã§MongoDB Shellãéžã³ã衚瀺ãããæ¥ç¶æé ã«åŸããŸãããã¹ã¯ãŒãã¯ããã³ããã§å ¥åããèšäºã»Gitã»å ¬éç»é¢ãžè²ŒããŸããã
æ¥ç¶å€±æã§ã¯ãçŸåšã®IPãDBãŠãŒã¶ãŒãDNSã»ãããã¯ãŒã¯ãæ¥ç¶å ã®ç¶æ ãé ã«ç¢ºèªããŸããå šIPãèš±å¯ããããšãæåã®è§£æ±ºçã«ããŸããã åŠç¿ãçµãã£ããäžèŠãªæ¥ç¶èš±å¯ãšç·Žç¿ãªãœãŒã¹ãæŽçããŸãã
mongoshã§1ä»¶ãç»é²ã»æ€çŽ¢ãã
æ¥ç¶ã§ããããæ¬¡ãmongoshã§å®è¡ããŸããlearning_shopãšããèªåã®ç·Žç¿DBãšãproducts_demoãšããã³ã¬ã¯ã·ã§ã³ã ããæ±ããŸãã
use learning_shop
const products = db.products_demo;
const added = products.insertOne({
name: "ããã",
price: 200,
colors: ["èµ€"]
});
const productId = added.insertedId;
products.findOne({ _id: productId });
_idãšããããã»200ã衚瀺ãããã°æåã§ããinsertOneãåå®è¡ãããšå¥ã®ããã¥ã¡ã³ããå¢ããã®ã§ãèŠçŽããšãã¯findOneã ãå®è¡ããŸããã·ã§ã«ãéãããšå€æ°ã¯æ®ããªããããåæ¥ç¶æã¯å¯Ÿè±¡ã®_idã確èªããŠãã ããã
åã1ä»¶ã ããæŽæ°ã»åé€ãã
åãã·ã§ã«ã§ãä¿åãã_idã䜿ããŸãã
products.updateOne(
{ _id: productId },
{ $set: { price: 250 } }
);
products.findOne({ _id: productId });
äŸ¡æ Œã250ã«ãªã£ãã確èªããŸããmatchedCountã0ãªãã察象ã®_idãDBãéããªãã確èªããŠãã ããã$setã¯æå®ããé
ç®ãå€ããã®ã§ãååãšè²ã¯æ®ããŸãã
æåŸã«ããã®ç·Žç¿ã§ç»é²ãã1ä»¶ã ããåé€ããŸãã
products.deleteOne({ _id: productId });
products.findOne({ _id: productId });
å逿°ã1ãæ€çŽ¢çµæãnullãªãå®äºã§ããã³ã¬ã¯ã·ã§ã³å
šäœãæ¶ãæäœã¯å¿
èŠãããŸããã
æè»ãªæ§é ã䜿ããšãã®èãæ¹
| ç¥ãããããš | èãããã€ã³ã |
|---|---|
| é ç®ãå¢ãããã | äžç·ã«èªãããŒã¿ãåãææžãžãŸãšããã |
| åãããããã | ã¢ããªã®æ€èšŒãšDBã®ã¹ããŒãæ€èšŒãã©ã䜿ãã |
| æ€çŽ¢ãéãããã | æ€çŽ¢æ¡ä»¶ã«åãã€ã³ããã¯ã¹ãããã |
| è€æ°ææžãäžæ¬å€æŽããã | å¯Ÿå¿æ§æãšãã©ã³ã¶ã¯ã·ã§ã³ã®æ¡ä»¶ãæºããã |
æè»ãªã¹ããŒãã§ããäŸ¡æ Œã«æååãæ··ããã°éèšãééããããšããããŸããã¹ããŒãæ€èšŒã§åãç¯å²ãæå®ã§ããŸããåäžææžã®ååæ§ãšãè€æ°ææžã®ãã©ã³ã¶ã¯ã·ã§ã³ã¯åããŠèããŸãããã
次ã«åŠã¶ãªã
SQLãšNoSQLã®æ¯èŒã§ããŒã¿ã®ãŸãšãæ¹ãæ¯ã¹ãAPIéçºå ¥éã§ååãå€ããååŸããçªå£ã®äœãæ¹ãžé²ããŸãã
åèè³æ
- MongoDB CRUD â ç»é²ã»æ€çŽ¢ã»æŽæ°ã»åé€ãšåäžææžã®ååæ§
- Atlas IP access list â IPåäœã®æ¥ç¶èš±å¯ãšäžæèš±å¯
- Atlas cluster creation â ã¯ã©ã¹ã¿äœæã®åæ
- MongoDB Schema validation â åã»å€ã®æ€èšŒ
- MongoDB Indexes â æ€çŽ¢æ¡ä»¶ãšã€ã³ããã¯ã¹
- MongoDB Transactions â å¯Ÿå¿æ§æãšèªã¿æžãã®æ¡ä»¶
- Atlas Database users â DBãŠãŒã¶ãŒãšAtlasãŠãŒã¶ãŒã®éã
- mongosh Connect â æ¥ç¶ãšãã¹ã¯ãŒãã®ããã³ãã
- MongoDB BSON types â ææžåœ¢åŒãšå