상세 컨텐츠

본문 제목

[Python MongoDB] Python을 활용하여 MongoDB 연결하기 2편

Python

by donggyu1998 2021. 9. 5. 22:58

본문

반응형

💡 글 작성자는 vscode를 활용하여 Python을 작성하고있습니다.

이전 게시글 : https://donggyu.tistory.com/82

💡 [실행 화면]

💡 main.py

from database.dbmanager import Manager

def main():
    manager = Manager()
    print(manager.connect_database())
    print("**************** MongoDB ****************************")
    print("[1] List, [2] Insert, [3] Delete, [4] Edit, [5] Exit")
    print("*****************************************************")
    select = input("이용할 기능을 선택해주세요. ::: ")
    
    if select == '1':
        print(manager.find())
    elif select == '2':
        print(manager.insert())
    elif select == '3':
        print(manager.delete())
    elif select == '4':
        print(manager.update())
    elif select == '5':
        exit()
    else:
        print("잘못된 선택으로 종료됩니다.")
        exit()

if __name__ == "__main__":
    main()

 

database의 dbmanager을 불러옵니다.

그 후 Manager라는 class를 연동합니다. 

 

번호를 선택할 경우 if select로 연결되며

 

1~5번까지의 선택지가 있습니다. 

💡 dbmanager.py

import os
from pymongo import MongoClient

connect_db = "url"
client = MongoClient(connect_db)
db = client['blog'] 

class Manager:
    def __init__(self):
        os.system('cls')

    def connect_database(self):
        print("MongoDB: connect Successful MongoDB.")
        return client.list_database_names()

    def find(self):
        users = list(db.user.find({}, {'_id':False}))
        for user in users:
            print(user)
            
    def insert(self):
        print("**************** MongoDB Insert ************")
        name = input('이름을 입력해주세요. ::')
        age = int(input(('나이를 입력해주세요. ::')))
        db.user.insert_one({'name':name, 'age':age})
        db.inserted_ids
        print("MongoDB: Insert Successful.")
        
    def delete(self):
        name = input('삭제할 이름을 입력해주세요. ::')
        print("MongoDB: Delete Successful.")
        return db.user.remove({'name': name})
        
    def update(self):
        os.system('cls')
        print("**************** MongoDB ****************************")
        print("[1] Name, [2] Age")
        print("*****************************************************")
        select = input('변경할 Data 기능을 선택해주세요. :: ')
        #print("MongoDB: Edit Successful.")
        #return db.user.update_many({"age":"23"}, {"$set":{"age" :"24"}})

 

반응형

관련글 더보기