1. 程式人生 > >連線資料庫的另外一種方式 ORM 模型

連線資料庫的另外一種方式 ORM 模型

from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker
import json

# 將這些資訊寫在一個配置檔案 (這裡面寫到了 json 檔案中)
setting_file = r"F:\python_prj\hsh_rk2\setting.json"
setting_json = json.load(open(setting_file))
db = setting_json.get('mysql').get('hsh_zt')
print(db)  # {'charset': 'utf8', 'host': '127.0.0.1:3306', 'db': 'haha', 'pwd': 'root', 'user': 'root'}

# 連線資料庫
"""
       pymysql
            mysql+pymysql://<username>:<password>@<host>/<dbname>[?<options>]

            mysql+pymysql://使用者名稱 : 密碼  @ip+port/ 資料庫名稱 [?<options>]

       # 建立引擎
            engine = create_engine("mysql+pymysql://root:
[email protected]
:3306/ccc", max_overflow=5, encoding='utf-8', echo=True) """ engine_str = 'mysql+pymysql://{}:{}@{}/{}?charset={}'.format(db.get('user'), db.get('pwd'), db.get('host'), db.get('db'), db.get('charset')) engine = create_engine(engine_str, echo=True) # echo=True 這個引數顯示 生成的過程 DB_Session = sessionmaker(bind=engine) # 建立與資料庫的會話session class ,注意,這裡返回給session的是個class,不是例項 session = DB_Session() # 生成session例項 #cursor sql = "select * from table_haha" # 定義一個 sql 語句 result = session.execute(sql) # 提交sql語句 result_list = list(result) # 將獲取到的結果轉化成一個列表

ORM框架很多的知識,我是學的有點頭大,看過了我又忘記的差不多了,沒完整的用過還是記不住,只能說有點印象。。。