把MySQL表結(jié)構(gòu)映射為Python中的對象的教程
ORM
mysql的表結(jié)構(gòu)是二維表,用python的數(shù)據(jù)結(jié)構(gòu)表示出來就是一個列表,每一個記錄是一個tuple。如下所示:
[('1', ''huangyi),('2', ''letian),('3', 'xiaosi')]
這一行并不便于看出表的結(jié)構(gòu),可以把它換成對象的形式。
class User(object):
def __init__(self, id, name):
self.id = id
self.name = name
得到:
[
User('1', 'huangyi'),
User('2', 'letian'),
User('3', 'xiaosi')
]
這就是ORM(Object-relational Mapping),把關(guān)系數(shù)據(jù)庫的表結(jié)構(gòu)映射到對象上。我們可以用SQLAlchemy框架來進(jìn)行映射。
SQLAlchemy
#!/usr/bin/env python
#-*-coding:utf-8 -*-
from sqlalchemy import Column, String, create_engine
from sqlalchemy.orm import sessionmaker
from sqlalchemy.ext.declarative import declarative_base
Base = declarative_base()
class User(Base):
__tablename__ = 'user'
id = Column(String(20), primary_key=True)
name = Column(String(20))
engine = create_engine('mysql+mysqlconnector://root:XXXXX@localhost:3306/TUZHI')
DBSession = sessionmaker(bind=engine)
session = DBSession()
new_user = User(id='4', name='Huangyi')
session.add(new_user)
session.commit()
#session.close()
##進(jìn)行查詢
#session = DBSession()
user = session.query(User).filter(User.id=='4').one()
print 'type:', type(user)
print 'name:', user.name
session.close()
- python的mysql數(shù)據(jù)庫建立表與插入數(shù)據(jù)操作示例
- Python實(shí)現(xiàn)將MySQL數(shù)據(jù)庫表中的數(shù)據(jù)導(dǎo)出生成csv格式文件的方法
- Python實(shí)現(xiàn)mysql數(shù)據(jù)庫更新表數(shù)據(jù)接口的功能
- Python中模塊pymysql查詢結(jié)果后如何獲取字段列表
- Python MySQL進(jìn)行數(shù)據(jù)庫表變更和查詢
- Python如何讀取MySQL數(shù)據(jù)庫表數(shù)據(jù)
- Python增量循環(huán)刪除MySQL表數(shù)據(jù)的方法
- Pymysql實(shí)現(xiàn)往表中插入數(shù)據(jù)過程解析
相關(guān)文章
一文詳解如何在Python中進(jìn)行數(shù)學(xué)建模
數(shù)學(xué)建模是數(shù)據(jù)科學(xué)中使用的強(qiáng)大工具,通過數(shù)學(xué)方程和算法來表示真實(shí)世界的系統(tǒng)和現(xiàn)象,本文將指導(dǎo)大家完成Python中的數(shù)學(xué)建模過程,感興趣的可以了解下2024-11-11
用python處理圖片實(shí)現(xiàn)圖像中的像素訪問
本篇文章主要介紹了用python處理圖片實(shí)現(xiàn)圖像中的像素訪問,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-05-05
Python編程入門之Hello World的三種實(shí)現(xiàn)方式
這篇文章主要介紹了Python編程入門之Hello World的三種實(shí)現(xiàn)方式,實(shí)例分析了print輸出函數(shù)的使用及控制臺輸出的相關(guān)技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-11-11
Python web開發(fā)之用Tornado框架制作簡易表白墻網(wǎng)站
這篇文章將用Python做Web開發(fā)。在Python當(dāng)中,WEB開發(fā)框架主要有三個,本文將利用Tornado框架做一個簡單的表白墻網(wǎng)站,感興趣的可以了解一下2022-02-02
python 實(shí)現(xiàn)format進(jìn)制轉(zhuǎn)換與刪除進(jìn)制前綴
這篇文章主要介紹了python 實(shí)現(xiàn)format進(jìn)制轉(zhuǎn)換與刪除進(jìn)制前綴的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-03-03
Python識別驗(yàn)證碼的實(shí)現(xiàn)示例
這篇文章主要介紹了Python識別驗(yàn)證碼的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09
python實(shí)現(xiàn)socket客戶端和服務(wù)端簡單示例
這篇文章主要介紹了python實(shí)現(xiàn)socket客戶端和服務(wù)端簡單示例,需要的朋友可以參考下2014-02-02
python利用pandas和csv包向一個csv文件寫入或追加數(shù)據(jù)
這篇文章主要給大家介紹了關(guān)于python利用pandas和csv包向一個csv文件寫入或追加數(shù)據(jù)的相關(guān)資料,我們越來越多的使用pandas進(jìn)行數(shù)據(jù)處理,有時需要向一個已經(jīng)存在的csv文件寫入數(shù)據(jù),需要的朋友可以參考下2023-07-07
Python實(shí)現(xiàn)霍夫圓和橢圓變換代碼詳解
這篇文章主要介紹了Python實(shí)現(xiàn)霍夫圓和橢圓變換代碼詳解,具有一定借鑒價值,需要的朋友可以參考下2018-01-01

