#_*_coding:utf-8_*_ ''' 創(chuàng)建SQLAlchemy應用基本過程 1、創(chuàng)建連接(和關系數據庫創(chuàng)建連接) 2、聲明映射文件(python中到類和數據庫中的表做一對一的映射,這樣就可以通過python中的類對數據庫中到表進行操作) 3、創(chuàng)建模式(可以創(chuàng)建表) 4、初始化映射實例 5、創(chuàng)建會話 6、持久化實例對象 ''' from sqlalchemy import create_engine #創(chuàng)建連接 engine = create_engine('MySQL://root:1qaz#EDC@192.168.89.101:3306/student', echo=True) ''' 參數說明: mysql 表示要連接的數據庫是mysql數據庫 root 表示用root賬戶登錄mysql數據庫 1qaz#EDC 表示連接數據庫的root賬戶的密碼 @ 是一個符號,規(guī)定的格式 192.168.89.1.101:3306 表示數據庫的連接地址和端口3306 soms 表示將要連接的數據庫的名字 echo=True 表示在執(zhí)行的時候是否打印sql語句,False為不打印 ''' #聲明映射文件 from sqlalchemy.ext.declarative import declarative_base #引入了declarative_base類 Base = declarative_base() #實例化了一個declarative_base實例 from sqlalchemy import Column, Integer, String #引入類Column, Integer, String類 class User(Base): #創(chuàng)建自己的實例類 名字為User 繼承Base類 __tablename__ = 'users' #這個屬性,表示這個類和數據庫中的users表進行映射 id = Column(Integer, primary_key=True) #這個屬性表示id在數據庫表中代表著一列,Integer表示是整數,而且id是主鍵 name = Column(String(10)) #這個屬性表示在數據庫表中也是一列,它的類型是string passwd = Column(String(10)) #這個屬性表示在數據庫表中也是一列,它的類型是string def __repr__(self): #定義了一個方法,目的是將User類更加形象的表示出來,沒啥太大用途 return "" % (self.name, self.name, self.passwd) #創(chuàng)建模式,創(chuàng)建數據庫表,表名稱:users User.metadata.create_all(engine) #創(chuàng)建會話(session) '''創(chuàng)建會化''' from sqlalchemy.orm import sessionmaker #引入sessionmaker這個函數 Session = sessionmaker(bind=engine) #創(chuàng)建session對話,通過這個session就可以對數據庫進行一些操作 session = Session() #綁定 #持久化一個實例對象 ed_user = User(id=2,name='tantianran', passwd='1qaz#EDC') #向數據庫表中到列插入數據 session.add(ed_user) #將這個實例添加到session中 session.commit() #提交
超過十余年行業(yè)經驗,技術領先,服務至上的經營模式,全靠網絡和口碑獲得客戶,為自己降低成本,也就是為客戶降低成本。到目前業(yè)務范圍包括了:網站設計、成都網站設計,成都網站推廣,成都網站優(yōu)化,整體網絡托管,小程序定制開發(fā),微信開發(fā),成都app開發(fā),同時也可以讓客戶的網站和網絡營銷和我們一樣獲得訂單和生意!
執(zhí)行結果: