1. 程式人生 > >Python3-sqlalchemy-orm

Python3-sqlalchemy-orm

 

 1 #-*-coding:utf-8-*-
 2 #__author__ = "logan.xu"
 3 
 4 
 5 import sqlalchemy
 6 from sqlalchemy import create_engine
 7 from sqlalchemy.ext.declarative import declarative_base
 8 from sqlalchemy import Column,Integer,String
 9 from sqlalchemy.orm import sessionmaker
10 
11 engine=create_engine("
mysql+pymysql://root:[email protected]/news",encoding='utf-8',echo=True) 12 Base=declarative_base() 13 14 class User(Base): 15 __tablename__='user' 16 id=Column(Integer,primary_key=True) 17 name=Column(String(32)) 18 password=Column(String(64)) 19 Base.metadata.create_all(engine) #
建立表結構 20 21 Session_class=sessionmaker(bind=engine) 22 #建立與資料庫的會話session class,注意,這裡返回給session的是這個class,不是例項 23 Session=Session_class() #生成session例項 24 25 user_obj=User(name="root",password="12345678") #生成你要建立的資料物件 26 user_obj2=User(name="jack",password="122") #生成你要建立的資料物件 27 print(user_obj.name,user_obj.id) #
此時還沒建立物件呢,不信你列印一下ID發現還是none 28 29 Session.add(user_obj) #把要建立的資料物件新增到這個session裡,一會統一建立 30 Session.add(user_obj2) #把要建立的資料物件新增到這個session裡,一會統一建立 31 print(user_obj.name,user_obj.id) #此時也依然還沒建立 32 33 Session.commit() #現在才統一提交,建立資料