sqlalchemy 日期
时间: 2023-10-02 08:12:29 浏览: 81
SQLAlchemy 支持多种日期类型,包括 DATE、TIME、DATETIME、TIMESTAMP 等。你可以使用 Python 中的 datetime 模块来创建日期对象,然后将其存储到数据库中。
以下是一个例子,展示如何使用 SQLAlchemy 存储日期:
```python
from sqlalchemy import create_engine, Column, Integer, String, Date
from sqlalchemy.ext.declarative import declarative_base
from datetime import date
engine = create_engine('sqlite:///example.db')
Base = declarative_base()
class Person(Base):
__tablename__ = 'person'
id = Column(Integer, primary_key=True)
name = Column(String)
birthday = Column(Date)
Base.metadata.create_all(engine)
# 创建一个 Person 对象并将其存储到数据库中
person = Person(name='Alice', birthday=date(1990, 1, 1))
session.add(person)
session.commit()
# 查询生日在 1990 年以后的人
result = session.query(Person).filter(Person.birthday >= date(1990, 1, 1)).all()
for person in result:
print(person.name)
```
在这个例子中,我们创建了一个 Person 类,其中包含了一个日期类型的 birthday 属性。我们创建了一个 Person 对象并将其存储到数据库中,然后查询生日在 1990 年以后的人并打印他们的名字。
请注意,我们在创建日期对象时使用了 Python 中的 datetime 模块,而不是使用 SQLAlchemy 中的日期类型。当我们将日期对象存储到数据库中时,SQLAlchemy 会自动将其转换为适当的日期类型。
阅读全文