Understanding Database 8 - NoSQL + Python Basic
2023. 1. 16. 05:56ㆍData science/Database
반응형
- PyMongo <-BSON->MongoDB
- Client-side JSON(Python) <->Python App, PyMongo Driver <-> NoSQL BSON(MongoDB)
Install and Use PyMonggo + DNSPython(to connect MongoDB Atlas)
python -m pip install pymongo
python -m pip install dnspython
import pymongo
from pymongo import MongoClient
conn_str="mongodb+srv"://<username>:<password>@<cluster-name>.mongodb.net/myFristDatabase"
client = MongoClient(conn_str, serverSelectionTimeoutMs=5000)
try:
print(client.server_info())
except Exception:
print("Unable to connect to the server.")
MongoDB is lazy; none of the commands works until the first document inserted
: Three commands are executed together using either dictionary-style access or attribute-style access
(The approach is different, Dictionay-style uses [ ], while attribute-style uses "db.objectname.fieldname")
Dictionary-Style Access
myDB = client["OnlineStore"]
myCollection = myDB["phones.items"]
item_1={
"_id": "ewubkjdsk244",
"name": "iphone 13"}
myCollection.insert_one(item_1)
print(myCollection.inserted_id)
//
import pprint
myCollection = myDB["phones.items"]
user1_items=myCollection.find()
for item in user1_items:
pprint.pprtin(item)
Attribute-Style Access
myDB = client.OnlineStore
myCollection = myDB.phones.items
item_1={
"_id": "ewubkjdsk244",
"name": "iphone 13"}
myCollection.insert_one(item_1)
print(myCollection.inserted_id)
//
import pprint
myCollection = myDB.phones.items
user1_items=myCollection.find()
for item in user1_items:
pprint.pprtin(item)
Inserting multiple documents
item_1 ={
"_id": "hvjh399"
}
item_2 ={
"_id": "hvjh400"
}
item_3 ={
"_id": "hvjh401"
}
new_items=[item_1, item_2, item_3]
////
myDB = client["OnlineStore"]
myCollection= myDB["phones.items"]
myCollection.insert_many(new_items)
Viewing inserted document with pandas
import pandas as pd
all_items = myCollection.find()
items_df=pd.DataFrame(all_items)
items_df
반응형
'Data science > Database' 카테고리의 다른 글
Understanding Database 10 - Data modelling with MongoDB (0) | 2023.01.16 |
---|---|
Understanding Database 9 - Distributed Database Systems(DDB) (0) | 2023.01.16 |
Understanding database 7 - NoSQL (0) | 2023.01.16 |
Understanding database 6 - Normalization (0) | 2023.01.15 |
Understanding Database 5 - Advanced SQL Queries (Stored Procedure, Trigger, Views) (0) | 2023.01.15 |