DX Data School

Python 과 Mongo DB 연동

Kim J 2024. 1. 30. 10:07

1) 기본적인 사용법

> 패키지 설치 : pip install pymongo

> 서버연결

변수1 = pymongo.MongoClient("서버 IP", 포트번호)

> 데이터베이스 연결

변수2 = 변수1.데이터베이스이름 # 없으면 자동으로 생성 됨

> 컬렉션 연결

변수3 = 변수2.컬렉션이름 # 없으면 자동으로 생성 됨

> 데이터 1개 저장 시

변수3.insert_one(dice 객체)

> 데이터 여러개 저장 시

변수3.insert_many([dict 객체1, dict 객체2 ...])

2) 데이터 삽입

> 패키지 설치

 

> 데이터 베이스 연결

from pymongo import MongoClient

try:
    #데이터베이스 연결
    con = MongoClient('127.0.0.1', 27017)
    print(con)

except Exception as e:
    print("데이터베이스 연결 오류")

> 사용 할 데이터베이스 연결

from pymongo import MongoClient

try:
    #데이터베이스 연결
    con = MongoClient('127.0.0.1', 27017)
    # print(con)

    #사용할 데이터베이스 연결
    itstudy = con.itstudy
    print(itstudy)

except Exception as e:
    print("데이터베이스 연결 오류")

> 컬렉션 연

from pymongo import MongoClient

try:
    #데이터베이스 연결
    con = MongoClient('127.0.0.1', 27017)
    # print(con)

    #사용할 데이터베이스 연결
    itstudy = con.itstudy
    # print(itstudy)

    #컬렉션 연결
    users = itstudy.users
    print(users)

    
except Exception as e:
    print("데이터베이스 연결 오류")

중간중간 print 를 사용하여 예외 확인을 통해 미리 오류가 발생 했는지 확인해보기!

오류 없이 완료 됐기 때문에 print 모두 주석처리 !

> 데이터 삽입

from pymongo import MongoClient

try:
    #데이터베이스 연결
    con = MongoClient('127.0.0.1', 27017)
    # print(con)

    #사용할 데이터베이스 연결
    itstudy = con.itstudy
    # print(itstudy)

    #컬렉션 연결
    users = itstudy.users
    # print(users)

    # 1개 데이터 삽입
    users.insert_one({"name":"kim", "age": 31})
    # 여러개 데이터 삽입
    users.insert_many([{"name":"park", "age": 27}, {"name":"lee", "age":29}])
    

except Exception as e:
    print("데이터베이스 연결 오류")

제대로 들어갔는지 MongoDB 접속 도구에서 확인해보자.

아주 잘 들어간 모습을 볼 수 있다 ㅎ핳핳ㅎㅎㅎㅎㅎㅎㅎㅎㅎㅎㅎ

뿌 - 듯...

from pymongo import MongoClient

try:
    #데이터베이스 연결
    con = MongoClient('127.0.0.1', 27017)
    # print(con)

    #사용할 데이터베이스 연결
    itstudy = con.itstudy
    # print(itstudy)

    #컬렉션 연결
    users = itstudy.users
    print(users)

    
    # # 1개 데이터 삽입
    # users.insert_one({'name':'kim', 'age': 31})
    # # # 여러개 데이터 삽입
    # users.insert_many([{'name':'park', 'age': 27}, {'name':'lee', 'age':29}])
    
    result = users.find()
    print(result)
    for row in result:
        print(row)
        print(row['name']) 
        #dict에서 get 메서드를 이용하면 속성이 없을 때의 기본값을 지정할 수 있다.
        print(row.get('name', "noname")) # name이 없을 수 있으니까 get 사용


except Exception as e:
    print("데이터베이스 연결 오류")

위 코드를 사용하면 결과를 파이썬에서 바로 볼 수 있다.

'DX Data School' 카테고리의 다른 글

Django 활용하여 Web Programming 실습  (2) 2024.01.30
Python Web Programming  (0) 2024.01.30
Python의 Exception Handling(예외처리)  (1) 2024.01.30
NoSQL (MongoDB)  (1) 2024.01.30
Windows Function  (0) 2024.01.30