sqlalchemy相关内容
如何使用将一列的现有值映射到另一列所需的新值的字典来更新数据库中的多个现有行? 我有一张桌子: 类 MyTable(BaseModel):col1 = sa.Column(sa.String(256))col2 = sa.Column(sa.String(256)) 鉴于 col1 已经有值并且 col2 为空,如果我将数据集作为字典,如何更新 col2: payload = {'x'
..
SQLAlchemy 的 DateTime 类型允许使用 timezone=True 参数将非原始日期时间对象保存到数据库中,并将其原样返回.有没有办法修改 SQLAlchemy 传入的 tzinfo 的时区,例如它可能是 UTC?我意识到我可以使用 default=datetime.datetime.utcnow;然而,这是一个天真的时间,即使我使用了 timezone=True ,它也会很乐意
..
我想使用 pandas 函数 to_sql 将数据框写入 MariaDB 数据库.我在 PyCharm 中的 Python 代码如下所示: 将 pandas 导入为 pd导入 mysql.connector从 sqlalchemy 导入 create_enginemyd = pd.read_csv('/[路径]/[文件名].csv')engine = create_engine('mysql+m
..
在我安装 Mariadb 10 之后,Mysql 工作台和 JPDB 客户端都可以连接并正常工作,所以下一步是使用 Python(使用 SQLAlchemy)进行编程,这似乎需要 MySQL-python,所以我去更新它并得到:“mysql_config not found"我在“常见的地方"看了看,没有看到文件…… 所以我遵循了 关于 SO 的早期问题的一些想法并尝试安装:apt-get
..
以下代码有效: from sqlalchemy.ext.declarative import declarative_base基数 = 声明性基数() 但是,以下内容: 导入 sqlalchemyBase = sqlalchemy.ext.declarative.declarative_base() 抛出:模块“sqlalchemy"没有属性“ext".怎么可能? 解决方案 sql
..
我正在使用 ibm_db2 驱动程序和 sqlalchemy 处理 IBM DB2 数据库.我的模型是: 类用户(模型):id = Column('UID', Integer, primary_key=True)用户 = 列('用户',字符串(20))密码 = 列('密码',字符串(10))名称 = 列('名称',字符串(30)) 数据库中的字符串字段(例如 name)采用以下形式: >>>
..
当我使用带有 SQLite 数据库引擎的 Numeric 列时,SQLalchemy 给了我以下警告. SAWarning:方言 sqlite+pysqlite 不不原生支持 Decimal 对象 我正在尝试找出在 SQLalchemy 中使用 SQLite 的同时使用 pkgPrice = Column(Numeric(12,2)) 的最佳方法. 这个问题 [1] 如何将 Py
..
您可以在下面看到我的数据库中的一些表是如何关联的. 如您所见,中间的表格是连接 3 个具有多对多关系的表格... 一个基因可以在多个器官中表达并在多个实验中进行研究 在一个器官中,可以表达多个基因,并且可以在多个实验中研究一个器官. 在一项实验中,可以研究多个基因和器官 我正在使用 SQLAlchemy 插入数据.我知道如何与连接 2 个表的表添加多对多关系,我或多或少是这样
..
简述 在Flask-SqlAlchemy中测试模型类时,如何mock方法.query.filter_by()以返回mocked模型对象列表? 详细信息 假设我们有一个模型类,如下代码 从 flask.ext.sqlalchemy 导入 SQLAlchemydb = SQLAlchemy()类SomeModel(db.Model):# 更多列映射和方法在这里 然后在我们的 Fl
..
我正在尝试使用我的云函数中的 SQLAlchemy 连接到我的 Cloud SQL DB,但我似乎无法计算出正确的连接字符串. DATABASE_URL=postgres://$DB_USER:$_DB_PWD@/$DB_NAME?unix_socket=/cloudsql/$DB_INSTANCE 这给了我错误: pyscopg2.ProgrammingError: 无效 dns: 无效连
..
我在 PostgreSQL 上有一个会话 (SQLAlchemy),有一个活动的未提交事务.我刚刚通过 将会话传递给某个调用树,这些调用树可能已经或可能没有发出 SQL INSERT/UPDATE/DELETE 语句sqlalchemy.orm 或直接通过底层连接. 有没有办法检查这个事务中是否有任何未决的数据修改语句?IE.提交是否为空操作,回滚是否会丢弃某些内容? 我看到有人在 O
..
我需要从一个大表的所有行中读取数据,但我不想一次将所有数据拉入内存.是否有处理分页的 SQLAlchemy 函数?也就是说,将几行拉入内存,然后在必要时获取更多行. 我知道您可以使用 limit 和 offset 作为 这篇文章 建议,但如果我没有必要,我宁愿不处理. 解决方案 如果您使用的是 Flask-SqlAlchemy,请参阅 分页 方法.paginate 提供了几种简化分页
..
有没有办法在设置属性之后(或设置时)但在提交会话之前对对象执行验证? 例如,我有一个具有 mac 属性的域模型 Device.我想确保 mac 属性在添加到数据库或在数据库中更新之前包含有效且经过清理的 mac 值. 看起来 Pythonic 的方法是将大多数事情作为属性来做(包括 SQLAlchemy).如果我用 PHP 或 Java 对此进行编码,我可能会选择创建 getter/s
..
我正在同时尝试 2 件新事物,因此感谢您在简化和澄清方面的帮助. from sqlalchemy.ext.declarative import Declaration_attr从 sqlalchemy 导入列、浮点数、事件类 TimeStampMixin(对象):@declared_attrdef __tablename__(cls):返回 cls.__name__.lower()创建 = 列(
..
我有以下情况:- 带有字段的 Postgres 后端 时间戳不带时区 就在保存日期时间值之前,它看起来像:2014-09-29 06:00:00+00:00 然后我从数据库加载同一行,值为:2014-09-29 09:00:00 所以在数据库中存储的日期不再是 6AM .. 而是 9AM - 它在我的本地时区中转换. 我不明白发生了什么.为什么保存的日期会转换为本地的? 谢
..
我只想从我的数据库中选择(并返回)一个带有“where 子句"的字段.代码是: from sqlalchemy.orm import load_only@application.route("/user", methods=['GET', 'POST'])定义用户():user_id = session.query(User, User.validation==request.cookies.g
..
我正在尝试按照 此示例 在使用Python 的 Enum 类型.我定义了枚举,然后将它传递给列,如示例中所示,但我得到 ValueError: 不是有效的枚举.如何使用 Python 枚举正确定义 SQLAlchemy 枚举列? from flask import Flask从flask_sqlalchemy 导入SQLAlchemy导入枚举app = Fla
..
我有带有 json 列 的模型.模型和数据示例: app = Flask(__name__)app.config['SQLALCHEMY_DATABASE_URI'] = 'postgres://...'db = SQLAlchemy()db.init_app(app)app.app_context().push()类示例(db.Model):id = db.Column(db.Integer(
..
我想使用 orm 在 SQLAlchemy 中复制模型实例(行).我的第一个想法是这样做: i = session.query(Model)session.expunge(i)old_id = i.idi.id = 无session.add(i)session.flush()打印 i.id #新 ID 然而,显然分离的对象仍然“记住"它有什么 id,即使我在分离时将 id 设置为 None.因
..
在 Flask 中这样开始似乎很常见: from flask import Flask从flaskext.sqlalchemy 导入SQLAlchemyapp = Flask(__name__)SQLALCHEMY_DATABASE_URI = '东西'app.config.from_object(__name__)db = SQLAlchemy(应用程序) 然后在任何地方导入并使用app和d
..