Heim  >  Artikel  >  Backend-Entwicklung  >  Beispielhafte Einführung in die SQLalchemie

Beispielhafte Einführung in die SQLalchemie

零下一度
零下一度Original
2017-07-17 14:01:391470Durchsuche

SQLAlchemy ist das ORM-Framework von Python. Seine Philosophie besteht darin, dass die Größe und Leistung der Datenbank wichtiger sind als die Objektsammlung und die Abstraktion der Objektsammlung wichtiger ist als die Tabellen und Zeilen.

Datenbankbetriebssoftware ähnelt pdo in PHP, ist jedoch flexibler und komplexer als pdo. Sie kann die Tabellen in der Datenbank eins zu eins mit den Klassen im Programm abgleichen, was den Aufruf erleichtert. Wenn Sie die Klasse in der Anfangsphase gut schreiben können, müssen Sie später keine SQL mehr schreiben

Daten einfügen:
pip install flask_sqlalchemy

Daten abfragen
 1 from flask_sqlalchemy import SQLAlchemy 2 from sqlalchemy import * 3 from sqlalchemy.orm import * 4 #上面导入的文件可能有些用不到; 5 engine=create_engine("mysql://root:root@localhost:3306/flask?charset=utf8",echo=True) 6 metadata=MetaData(engine) 7 goods=Table('goods',metadata, 8     Column('id',Integer,primary_key=True), 9     Column('name',String(20)),10     Column('fullname',String(40)),11     )12 metadata.create_all()
1. Als ich diese Methode zum Einfügen von Daten sah, dachte ich das Abfragen sollten ebenfalls möglich sein.

 1 #-*-coding:utf-8-*- 2 from flask_sqlalchemy import SQLAlchemy 3 from sqlalchemy import * 4 from sqlalchemy.orm import * 5 #链接数据库并初始化对象 6 engine=create_engine("mysql://root:root@localhost:3306/flask?charset=utf8",echo=True) 7 metadata=MetaData(engine) 8  9 users_table = Table("goods",metadata,autoload=True)  #这个应该是初始化表10 i = users_table.insert() #调用对象中的insert()方法,产生语句:INSERT INTO goods (id, name, fullname) VALUES (%s, %s, %s)11 result = i.execute(name = "summer",fullname = "736960938@qq.com") #传入参数并执行12 print(result)
2. Stellen Sie eine entsprechende Beziehung zwischen Tabelle und Klasse her
object.__dict__ Den Inhalt im Objekt anzeigen und nicht rekursiv anzeigen
1 users_table = Table("goods",metadata,autoload = True)2 i = users_table.select()3 result = i.execute(name="xiaoge")4 #这种方式查询好像有点尴尬,对象里面包含对象,不能直接看到查询结果5 print(result)
Alle Daten abfragen:

 1 goods_table = Table("goods",metadata,autoload = True) 2 ''' 3 建立表和class的映射关系 4 ''' 5 class Goods(object): 6   def __repr__(self): 7       return "%s(%r,%r)" % (self.__class__,self.name,self.fullname) 8 mapper(Goods,goods_table) 9 '''建立关系结束'''10 session = create_session()11 query = session.query(Goods)12 u=query.filter_by(name = "xiaoge").first()13 print(u.fullname)

Das obige ist der detaillierte Inhalt vonBeispielhafte Einführung in die SQLalchemie. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn