DB
3-11 DB개괄
DB database
と書かれているのは、データを「うまく」インポートするためです.
例えば、本棚を書く理由は、本を整理して、後でよく本を探すために、似たような道理です.
DBインストールの確認
Chromeウィンドウに次の画面が表示されている場合、DBは実行中です.
localhost:27017のタイプ
SQL
✔所与の行/列にデータを格納するEXCELと同様
✔利点:構造化データの抽出方法の最適化
✔短所:途中で交換しにくい
✔ex)MS-SQL、My-SQL等
NoSQL
データをバイナリ形式で格納するDB
✔異なるデータは異なる値を有する
✔メリット:データを柔軟に変更する.
✔ ex) MongoDB
📌 MongoDB
DB
:NoSQLデータベース、実行時に表示されないmongoDB
:mongodbデータを表示するためのビジュアル化プログラム
私たちはRobo 3 Tを使ってMongoDBのデータを可視化して確認します!Robo3T
3-12 Pymongo操作DBを使用
他者が作成したライブラリpymongo
アクションPython
を使用します.
きほんコード
from pymongo import MongoClient # pymongo를 임포트 하기(패키지 인스톨 먼저 해야겠죠?)
client = MongoClient('localhost', 27017) # mongoDB는 27017 포트로 돌아갑니다.
db = client.dbpymongo # 'dbpymongo'라는 이름의 db를 만듭니다.
# 코딩 시작
使用派モンゴル
◽ mongoDB
Pymongo
は、データを格納するために使用することができる.# insert - 데이터 저장하기
# 'users'라는 collection에 넣기
doc = {'name':'bobby','age':21}
db.users.insert_one(doc)
◽ insert / insert
find
find_one
を使用してデータを検索できます.# find - 모든 결과 값을 보기
# mogoDB에 있는 데이터 모두 보기
all_users = list(db.users.find({},{'_id':False}))
# 반복문을 돌며 모든 결과값을 보기
for users in all_users:
print(users)
# 결과
{'name': 'john', 'age': 30}
{'name': 'bobby', 'age': 21}
{'name': 'kay', 'age': 27}
{'name': 'jane', 'age': 21}
# mongoDB에서 특정 조건의 데이터 모두 보기
same_ages = list(db.users.find({'age':21},{'_id':False}))
for users in same_ages:
print(users)
# 결과
{'name': 'bobby', 'age': 21}
{'name': 'jane', 'age': 21}
# find_one - 특정 결과 값을 뽑아보기
# mongoDB에서 {'name':'bobby'}인 데이터만 보기
user = db.users.find_one({'name':'bobby'},{'_id':False})
print(user)
# 결과
{'name': 'bobby', 'age': 21}
◽ find
find_one
を使用してデータを変更できます.# update_one - 데이터 수정하기
# {'name':'bobby'}인 데이터를 찾아서 {'age':19}로 수정
db.users.update_one({'name':'bobby'},{'$set':{'age':19}})
◽ update_one
update_one
データの削除に使用できます.
しかし、データを削除するのは危険なので、ほとんど書かない.# delete_one - 데이터 삭제하기
# {'name':'bobby'}인 데이터를 찾아서 삭제
db.users.delete_one({'name':'bobby'})
コードの概要!(貼り付け用)
# 저장 - 예시
doc = {'name':'bobby','age':21}
db.users.insert_one(doc)
# 한 개 찾기 - 예시
user = db.users.find_one({'name':'bobby'})
# 여러개 찾기 - 예시 ( _id 값은 제외하고 출력)
same_ages = list(db.users.find({'age':21},{'_id':False}))
# 바꾸기 - 예시
db.users.update_one({'name':'bobby'},{'$set':{'age':19}})
# 지우기 - 예시
db.users.delete_one({'name':'bobby'})
Quiz-pymongo(映画ページ)
前回のムービーページのスクロール結果を利用してpymongoの練習をしたいと思います.
デフォルトコードの挿入
from pymongo import MongoClient
client = MongoClient('localhost', 27017)
db = client.dbpymongo
## 코딩 시작
delete one
target_movie = db.movies.find_one({'title':'매트릭스'})
print(target_movie['star'])
# 결과
9.39
delete one(マトリクススコアと同じ映画タイトルを取得)
target_movie = db.movies.find_one({'title':'매트릭스'})
terget_star = target_movie['star']
movies = list(db.movies.find({'star':terget_star}))
for movie in movies:
print(movie['title'])
# 결과
인생은 아름다워
매트릭스
라이언 일병 구하기
사운드 오브 뮤직
헬프
포레스트 검프
안녕 베일리
글래디에이터
인생은 아름다워
.
.
.
find one(「マトリクス」を0に評価)
db.movies.update_one({'title':'매트릭스'},{'$set':{'star':'0'}})
Reference
この問題について(DB), 我々は、より多くの情報をここで見つけました
https://velog.io/@jollyn/DB
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
他者が作成したライブラリ
pymongo
アクションPython
を使用します.きほんコード
from pymongo import MongoClient # pymongo를 임포트 하기(패키지 인스톨 먼저 해야겠죠?)
client = MongoClient('localhost', 27017) # mongoDB는 27017 포트로 돌아갑니다.
db = client.dbpymongo # 'dbpymongo'라는 이름의 db를 만듭니다.
# 코딩 시작
使用派モンゴル
◽ mongoDB
Pymongo
は、データを格納するために使用することができる.# insert - 데이터 저장하기
# 'users'라는 collection에 넣기
doc = {'name':'bobby','age':21}
db.users.insert_one(doc)
◽ insert / insert
find
find_one
を使用してデータを検索できます.# find - 모든 결과 값을 보기
# mogoDB에 있는 데이터 모두 보기
all_users = list(db.users.find({},{'_id':False}))
# 반복문을 돌며 모든 결과값을 보기
for users in all_users:
print(users)
# 결과
{'name': 'john', 'age': 30}
{'name': 'bobby', 'age': 21}
{'name': 'kay', 'age': 27}
{'name': 'jane', 'age': 21}
# mongoDB에서 특정 조건의 데이터 모두 보기
same_ages = list(db.users.find({'age':21},{'_id':False}))
for users in same_ages:
print(users)
# 결과
{'name': 'bobby', 'age': 21}
{'name': 'jane', 'age': 21}
# find_one - 특정 결과 값을 뽑아보기
# mongoDB에서 {'name':'bobby'}인 데이터만 보기
user = db.users.find_one({'name':'bobby'},{'_id':False})
print(user)
# 결과
{'name': 'bobby', 'age': 21}
◽ find
find_one
を使用してデータを変更できます.# update_one - 데이터 수정하기
# {'name':'bobby'}인 데이터를 찾아서 {'age':19}로 수정
db.users.update_one({'name':'bobby'},{'$set':{'age':19}})
◽ update_one
update_one
データの削除に使用できます.しかし、データを削除するのは危険なので、ほとんど書かない.
# delete_one - 데이터 삭제하기
# {'name':'bobby'}인 데이터를 찾아서 삭제
db.users.delete_one({'name':'bobby'})
コードの概要!(貼り付け用)
# 저장 - 예시
doc = {'name':'bobby','age':21}
db.users.insert_one(doc)
# 한 개 찾기 - 예시
user = db.users.find_one({'name':'bobby'})
# 여러개 찾기 - 예시 ( _id 값은 제외하고 출력)
same_ages = list(db.users.find({'age':21},{'_id':False}))
# 바꾸기 - 예시
db.users.update_one({'name':'bobby'},{'$set':{'age':19}})
# 지우기 - 예시
db.users.delete_one({'name':'bobby'})
Quiz-pymongo(映画ページ)
前回のムービーページのスクロール結果を利用してpymongoの練習をしたいと思います.
デフォルトコードの挿入
from pymongo import MongoClient
client = MongoClient('localhost', 27017)
db = client.dbpymongo
## 코딩 시작
delete one
target_movie = db.movies.find_one({'title':'매트릭스'})
print(target_movie['star'])
# 결과
9.39
delete one(マトリクススコアと同じ映画タイトルを取得)
target_movie = db.movies.find_one({'title':'매트릭스'})
terget_star = target_movie['star']
movies = list(db.movies.find({'star':terget_star}))
for movie in movies:
print(movie['title'])
# 결과
인생은 아름다워
매트릭스
라이언 일병 구하기
사운드 오브 뮤직
헬프
포레스트 검프
안녕 베일리
글래디에이터
인생은 아름다워
.
.
.
find one(「マトリクス」を0に評価)
db.movies.update_one({'title':'매트릭스'},{'$set':{'star':'0'}})
Reference
この問題について(DB), 我々は、より多くの情報をここで見つけました
https://velog.io/@jollyn/DB
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
from pymongo import MongoClient
client = MongoClient('localhost', 27017)
db = client.dbpymongo
## 코딩 시작
target_movie = db.movies.find_one({'title':'매트릭스'})
print(target_movie['star'])
# 결과
9.39
target_movie = db.movies.find_one({'title':'매트릭스'})
terget_star = target_movie['star']
movies = list(db.movies.find({'star':terget_star}))
for movie in movies:
print(movie['title'])
# 결과
인생은 아름다워
매트릭스
라이언 일병 구하기
사운드 오브 뮤직
헬프
포레스트 검프
안녕 베일리
글래디에이터
인생은 아름다워
.
.
.
db.movies.update_one({'title':'매트릭스'},{'$set':{'star':'0'}})
Reference
この問題について(DB), 我々は、より多くの情報をここで見つけました https://velog.io/@jollyn/DBテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol