sqlalchemy_テーブル作成アクション_データ操作の追加
3003 ワード
sqlalchemyを学ぶのはpythonのORMコンポーネントを学ぶことです
以下はまず資料を見て、よく理解しなければ本文を見て、順番に漸進的に知識点を理解することができます.公式サイトは最高のドキュメント 翻訳官网一篇好的blog テーブルの作成
キー(Key) List declarative_base()関数ベースクラスの作成 任意の数のマッピングクラスを定義できます.エンドユーザーのレコードを保存するためにアプリケーションを使用するテーブルからusersを開始します.呼び出された新しいクラスUserは、このテーブルをマッピングするクラスになります.クラスでは、マッピングするテーブルの詳細を定義します.主にテーブル名、およびカラムの名前とデータ型 Base.metadata.create_all(engine)
テーブルデータの追加
ダイレクトコード
上のcodeには一部の注釈があり、理解できます.以下、具体的にまとめます.セッションの作成:データベースに対するORMの「処理」はセッションです.アプリケーションを初めて設定するとcreate_Engine()文は同じレベルで、新しいSessionオブジェクトのファクトリ として使用されるSessionクラスを定義します.インスタンスセッション データベースにデータを追加し、セッションセッションセッションのaddとadd_を介してallメソッド. 最后に必ずcommit、会话session.commit()
この文書のソースアドレス
以下はまず資料を見て、よく理解しなければ本文を見て、順番に漸進的に知識点を理解することができます.
#User.py
import sqlalchemy
from sqlalchemy import create_engine
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy import Column,Integer,String
#
engine=create_engine("mysql+pymysql://test:[email protected]/pythonstudy",
encoding='utf-8', echo=True)
# ORM
Base=declarative_base() # orm
class User(Base):
__tablename__='user' #
id=Column(Integer,primary_key=True)
name=Column(String(32))
password=Column(String(32))
def __init__(self, name, password):
self.name = name
self.password = password
def set_namme(self, name):
self.name = name
def get_name(self):
return self.name
def set_pwd(self, password):
self.password = password
def get_pwd(self):
return self.password
Base.metadata.create_all(engine) #
キー(Key)
テーブルデータの追加
ダイレクトコード
# .py
from sqlalchemy.orm import sessionmaker
from sqlalchemy import create_engine
from sqlalchemy.ext.declarative import declarative_base
from com.wfc.python.day10sqlalchemy.User import User
engine=create_engine("mysql+pymysql://test:[email protected]/pythonstudy",
encoding='utf-8', echo=True)
Base=declarative_base() # orm
Session=sessionmaker(bind=engine) # Session ,
session=Session() # Session
ed_user=User(name='wangfangchen',password='123456')
session.add(ed_user) #
#
session.add_all(
[User(name='wendy', password='foobar'),
User(name='mary', password='xxg527'),
User(name='fred', password='blah')]
)
session.commit() #
上のcodeには一部の注釈があり、理解できます.以下、具体的にまとめます.
Session = sessionmaker(bind=engine)
session = Session()
ed_user=User(name='wangfangchen',password='123456')
session.add(ed_user) #
#
session.add_all(
[User(name='wendy', password='foobar'),
User(name='mary', password='xxg527'),
User(name='fred', password='blah')]
)
session.commit()
この文書のソースアドレス