安装:python -m pip install SQLAlchemy(命令行)
第一步下载了之后 我们要先查询它的版本(检查是否安装正确)
import sqlalchemy print(sqlalchemy.__version__) # 查询版本 1.1.14
那我们来查询数据库里面的某个表全部数据:
from sqlalchemy import create_engine # en = create_engine('mysql+pymysql://root:"数据库密码"@localhost/"库名"?charset=utf8')
# echo = True 可以显示使用了什么命令来执行
en = create_engine('mysql+pymysql://root:@localhost/py_mysql?charset=utf8', echo=True)src = en.execute( "select * from nav") print(src.fetchall())
在sqlalchemy中,session用于创建程序与数据库之间的会话。所有对象的载入和保存都需要通过session对象。
from Framework_t.mappers.Infos import News from sqlalchemy import create_engine, desc, text from sqlalchemy.orm import sessionmaker # 在sqlalchemy中,session用于创建程序与数据库之间的会话。所有对象的载入和保存都需要通过session对象。 # echo = True 可以显示使用了什么命令来执行 en = create_engine('mysql+pymysql://root:@localhost/py_mysql?charset=utf8', echo=True) Session = sessionmaker(en) mysession = Session() # src = mysession.query(News).all() # 打印全部 # print(src[0].__dict__) # src = mysession.query(News).first() # 打印一条 # print(src.id) # print(src.__dict__) # src = mysession.query(News).filter_by(id = 2).first() # print(src.__dict__) # src = mysession.query(News).filter(News.id > 2).offset(0).order_by(desc(News.id)).limit(2).all() # src = mysession.query(News).filter(News.id == 2).all() src = mysession.query(News).filter(text("id=:id and title=:name")).params(id=2, name="php").order_by(desc(News.id)).all() print(src)
from Framework_t.mappers.Infos import News from sqlalchemy import create_engine,desc,text from sqlalchemy.orm import sessionmaker # echo = True 可以显示使用了什么命令来执行 en = create_engine('mysql+pymysql://root:@localhost/py_mysql?charset=utf8',echo=True) Session = sessionmaker(en) mysession = Session() data = News(title = 'javacript') mysession.add(data) mysession.commit()
from Framework_t.mappers.Infos import News from sqlalchemy import create_engine,desc,text from sqlalchemy.orm import sessionmaker # echo = True 可以显示使用了什么命令来执行 en = create_engine('mysql+pymysql://root:@localhost/py_mysql?charset=utf8',echo=True) Session = sessionmaker(en) mysession = Session() mysession.query(News).filter(News.id==4).update({"title":"JS"}) mysession.commit()