在 SQLAlchemy 中使用 Postgres/PostGIS 视图

2024-03-28

两个问题:

  • 我想在我的 PostGIS-DB 中生成一个视图。如何将此视图添加到我的 Geometry_columns 表中?

  • 我必须做什么,才能将视图与 SQLAlchemy 一起使用? SQLAlchemy 的表和视图之间有区别吗?或者我可以使用与使用表相同的方式来使用视图吗?

抱歉我的英语不好。

如果对我的问题有疑问,请随时提问,以便我可以尝试以另一种方式解释它:)

Nico


SQLAlchemy 中的表对象有两个角色。它们可用于发出 DDL 命令以在数据库中创建表。但它们的主要目的是描述可以从中选择和插入的表格数据的列和类型。

如果您只想选择,那么视图在 SQLAlchemy 中看起来就像常规表一样。将视图描述为包含您感兴趣的列的表就足够了(您甚至不需要描述所有列)。如果你想使用 ORM,你需要为 SQLAlchemy 声明一些列的组合可以用作主键(任何唯一的都可以)。将某些列声明为外键也将使建立任何关系变得更加容易。如果您没有为该 Table 对象发出 create 操作,那么它只是 SQLAlchemy 知道如何查询数据库的元数据。

如果您还想插入到视图中,那么您需要在视图上创建 PostgreSQL 规则或触发器,将写入重定向到正确的位置。我不知道在 Python 端重定向写入的良好使用方法。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 SQLAlchemy 中使用 Postgres/PostGIS 视图 的相关文章

  • 使用 python 中的 java 库

    我有一个 python 应用程序和 java 应用程序 python 应用程序为 java 应用程序生成输入并在命令行上调用它 我确信一定有一个更优雅的解决方案 就像使用 JNI 从 Java 调用 C 代码一样 有什么指点吗 仅供参考 我
  • Conda 无法在 Powershell 中激活

    我已经在我的 Windows 10 笔记本电脑上安装了 anaconda 我正在尝试激活名为的Python环境pyenv 首先 我检查conda env list在我的笔记本电脑中 这是 powershell 上的输出 PS C Users
  • 嵌套重组 - Django

    我有一个包含以下字段的模型 日期 员工 和 计划时间 每个员工对于不同的日期都有不同的计划工作时间 我正在尝试构建我的模板 其中员工按行列出 他们的计划工作时间列在正确的相应日期下的列中 像这样的东西 https i stack imgur
  • 使用 theano 进行多处理

    我正在尝试将 theano 与 cpu 多处理和神经网络库 Keras 结合使用 I use device gpu标记并加载 keras 模型 然后 为了提取超过一百万张图像的特征 我使用多处理池 该函数看起来像这样 from keras
  • Python ttk.combobox 强制发布/打开

    我正在尝试扩展 ttk 组合框类以允许自动建议 我到目前为止的代码运行良好 但我想让它在输入一些文本后显示下拉列表 而不从小部件的输入部分移除焦点 我正在努力解决的部分是找到一种强制下拉的方法 在 python 文档中我找不到任何提及这一点
  • set() 可以在 Python 进程之间共享吗?

    我正在 Python 2 7 中使用多重处理来处理非常大的数据集 当每个进程运行时 它会将整数添加到共享的 mp Manager Queue 中 但前提是其他进程尚未添加相同的整数 由于您无法对队列进行 in 式成员资格测试 因此我这样做的
  • Python Pandas groupby、排名,然后根据自定义排名分配值

    问题设置 大熊猫数据框 df pd DataFrame Group A A A A A A A A A Subgroup Group 1 Group 1 Group 1 Group 1 Group 1 Group 1 Group 2 Gro
  • 为什么 1.__add__(2) 不起作用? [复制]

    这个问题已经存在了 可能的重复 访问 python int 文字方法 https stackoverflow com questions 10955703 accessing a python int literals methods 在P
  • 在 Qt Creator 中相互公开 QML 组件

    我正在使用 Qt Quick 和 PySide2 开发仪表板应用程序 但在 Qt Creator 的设计模式中公开我的 QML 组件时遇到问题 我的文件夹结构如下所示 myapp mycomponents component1 qml co
  • 显示多索引 pandas 数据帧的前 10 行

    我有一个多级索引 pandasDataFrame第一级在哪里year第二级是username 我只有一列已经按降序排序 我想显示每个索引级别 0 的前 2 行 我拥有的 count year username 2010 b 677 a 50
  • 如何检查两个数据集的匹配列之间的相关性?

    如果我们有数据集 import pandas as pd a pd DataFrame A 34 12 78 84 26 B 54 87 35 25 82 C 56 78 0 14 13 D 0 23 72 56 14 E 78 12 31
  • Python docker 容器在完成运行应用程序后立即关闭,即使指定保留在 -d -t 中

    我有一个 dockerfile FROM python 3 WORKDIR app ADD venv venv ADD data file1 csv gz data file1 csv gz ADD data file2 csv gz da
  • 解释 scipy.stats.entropy 值

    我正在尝试使用scipy stats 熵来估计库尔巴克 莱布勒 KL 两个分布之间的散度 更具体地说 我想使用 KL 作为衡量标准来确定两个分布的一致性 但是 我无法解释 KL 值 例如 t1 numpy random normal 2 5
  • 在Python中使用Counter()来构建直方图?

    我在另一个问题上看到我可以使用Counter 计算一组字符串中出现的次数 所以如果我有 A B A C A A I get Counter A 3 B 1 C 1 但现在 我如何使用该信息来构建直方图 对于您的数据 最好使用条形图而不是直方
  • 在 Mac OS x 10.7.5 中运行 Scrapy 所需的文件,使用 Python 2.7.3 IEPD_free(32 位)

    我是第一次测试 scrapy 使用命令安装后 sudo easy install U scrapy 一切似乎都运行正常 但是 当我运行时 scrapy startproject tutorial 我得到以下信息 luismacbookpro
  • Django ConnectionAbortedError:[WinError 10053]已建立的连接被主机中的软件中止

    我将 django 与 postgresql 一起使用 每当我尝试保存或删除任何内容时 都会发生此错误 Traceback most recent call last File c program files x86 python35 32
  • 使用 PyQt5 拖放 QLabels

    我正在尝试使用 PyQt5 将 Qlabel 拖放到另一个 Qlabel 上 from PyQt5 QtWidgets import QApplication QWidget QToolTip QPushButton QMessageBox
  • Twitter 不再使用请求库 python

    我有一个 python 函数 它使用 requests 库和 BeautifulSoup 来抓取特定用户的推文 import requests from bs4 import BeautifulSoup contents requests
  • 如何从 Python 脚本捕获 Curl 的输出

    我想使用curl查找有关网页的信息 但在Python中 到目前为止我有这个 os system curl head www google com 如果我运行它 它会打印出 HTTP 1 1 200 OK Date Sun 15 Apr 20
  • Pandas:根据是否为 ​​NaN 来移动列

    我有一个像这样的数据框 phone number 1 clean phone number 2 clean phone number 3 clean NaN NaN 8546987 8316589 8751369 NaN 4569874 N

随机推荐

  • 如何设置 Eclipse CDT 使用 GCC-4 而不是 GCC?

    如何设置 Eclipse CDT 使用 GCC 4 而不是 GCC 我问这个问题是因为我使用 Windows 64 位和 Cygwin 而 gcc exe 不起作用 我需要配置 Eclipse CDT 以使用 gcc 4 exe 但我不知道
  • 将 CSV 文件或 Excel 电子表格转换为 RESX 文件

    我正在寻找针对我遇到的问题的解决方案或建议 我有一堆需要本地化的 ASPX 页面 还有一堆需要支持 6 种语言的文本 进行翻译的人员无法访问 Visual Studio 最简单的工具可能是 Excel 如果我们使用 Excel 甚至导出到
  • 带有 firebase crashlytics 的 Hermes 包的反应本机源图

    我想从react native应用程序中读取crashlytics报告 但它在firebase控制台中根本不可读 Android 的崩溃示例如下所示 Non fatal Exception io invertase firebase cra
  • 使用 AST 解析器提取类实现的接口

    我正在使用 AST 解析器编译项目源代码 我可以通过什么方式提取类层次结构信息 即它是否正在实现任何接口或从另一个类扩展 您可以访问TypeDeclaration节点并从中获取类型绑定 ITypeBinding typeBind typDe
  • Scala,让我的循环更加实用

    我正在尝试减少像 Java 一样编写 Scala 2 8 的程度 这是我遇到的问题的简化 您能否对我的解决方案提出 更实用 的改进建议 变换地图 val inputMap mutable LinkedHashMap 1 gt a 2 gt
  • 在 Bash 中执行时间戳比较的最佳方法是什么

    我有一个警报脚本 我试图阻止它向我发送垃圾邮件 因此我想设置一个条件 如果在过去一小时内发送了警报 则不再发送警报 现在我有一个 cron 作业 每分钟检查一次条件 因为我需要在满足条件时快速收到警报 但我不需要每分钟都收到电子邮件 直到问
  • Spark - 是否可以控制分区到节点的放置?

    在 Spark 中 自定义Partitioner可以为 RDD 提供 通常 生成的分区会随机分配给一组工作人员 例如 如果我们有 20 个分区和 4 个工作线程 则每个工作线程将 大约 获得 5 个分区 然而 放置分区到工作节点 节点 看起
  • 将 ChartPanel 添加到 JPanel

    我这里有一些不起作用的代码 XYSeriesCollection dataset new XYSeriesCollection dataset addSeries series JFreeChart chart ChartFactory c
  • Angularjs:理解递归指令

    我在这里找到了一个很棒的树指令 原来的 http jsfiddle net n8dPm http jsfiddle net n8dPm 我一直试图通过其他几个问题来理解它的功能 1 https stackoverflow com quest
  • 如何在表单应用程序中获取参数?

    我可以找到许多有关如何在控制台应用程序中获取参数的示例 但我似乎找不到如何在 Windows 窗体应用程序中获取参数的示例 我想关注以下事情 每当我打开 jpg 文件时 Windows 都会启动我的应用程序 我想知道我的应用程序中 jpg
  • AWS Lambda 和 AWS API Gateway:如何发送二进制文件?

    我有一个 lambda 函数 它使用事件中的输入键从 s3 获取文件 并需要将其发送到客户端 我正在使用以下函数从 s3 获取文件 function getObject key var params Bucket my bucket Key
  • PouchDb.get(id,{attachments: true}) 在 Android 上不返回数据

    我正在使用 PouchDb 无复制 开发一个 Ionic 应用程序 我能够成功地存储带有附件的数据 为了检索数据 我使用下面的控制器片段来调用 angularjs 工厂中的 get 函数 pouchDbManager getData cur
  • 春云流兔的退避设置

    我仍在使用rabbitmq和spring云消息传递设置示例消息传递系统 但遇到了错误 或者我误解了文档 使用spring boot版本2 0 3 RELEASE 为了这个例子 我想要以下设置 spring cloud stream rabb
  • 如何将具有多个依赖项的 C 库编译到 Python 包中? Cmake?

    我在 python3 x 中有一个 Python 包 我一直在编写它 它与 C 库中的两个 C 函数交互 目前 我一直在使用ctypes我直接链接到共享库 so 然后使用 python 脚本与之交互 https docs python or
  • 为协作者使用 git 存储库的最佳方式是什么?

    一般来说 为协作者使用存储库的最佳方式是什么 我们应该只从主存储库中推送和拉取 还是为每个协作者创建一个分支 然后在适当的时候进行合并 如果这是一个愚蠢 基本的问题 我深表歉意 git noob 在这里 谢谢 Git 支持许多不同的工作流程
  • 无法将搜索栏拖动到滚动视图内

    如果这个问题在其他地方得到了回答 我深表歉意 我找不到任何有同样问题的人 我将 SeekBar 添加到位于嵌套 ScrollView 内的relativelayout 但是 我无法拖动搜索栏的拇指 我可以沿着其路径单击来更改其值 但无法拖动
  • 模板类的模板成员函数的类外定义的语法

    template
  • 无法计算表达式,因为代码已优化或本机框架位于调用堆栈顶部

    我正在开发一个网站 用户可以在该网站上提交一些信息 提交信息后 我尝试同时发送两封邮件 一封发送给我的销售团队 一封发送给我网站上的访问者 在发送邮件时 我在使用重定向到另一个页面时收到以下错误Response Redirect http
  • 在 Windows 10 中使用 PS 将程序(带参数)固定到任务栏

    我可以使用下面的代码将程序固定到 Windows 10 任务栏 感谢this https stackoverflow com questions 31720595 pin program to taskbar using ps in win
  • 在 SQLAlchemy 中使用 Postgres/PostGIS 视图

    两个问题 我想在我的 PostGIS DB 中生成一个视图 如何将此视图添加到我的 Geometry columns 表中 我必须做什么 才能将视图与 SQLAlchemy 一起使用 SQLAlchemy 的表和视图之间有区别吗 或者我可以