将 bytea 列转换为 OID,同时保留值

2023-11-29

我正在尝试改变一个bytea具有类型的列oid并仍然保留价值观。

我尝试过使用如下查询:

ALTER TABLE mytable ADD COLUMN mycol_tmp oid;
UPDATE mytable SET mycol_tmp = CAST(mycol as oid);
ALTER TABLE mytable DROP COLUMN mycol;
ALTER TABLE mytable RENAME mycol_tmp TO mycol;

但这只是给了我错误:

ERROR: cannot cast type bytea to oid

有什么办法可以实现我想要的吗?


Oid 类型的列只是对实际存储在系统中的二进制内容的引用pg_largeobject桌子。在存储方面,一个Oid是一个4字节的整数。 另一方面,类型为 bytea 的列is实际内容。

要将字节传输到大对象,应使用大对象的类似文件的 API 创建一个新的大对象:lo_create() 获取新的 OID,然后在写入模式下使用 lo_open(),然后使用 lo_write() 写入或lowrite(),然后是 lo_close()。

仅通过演员阵容无法合理地完成此任务。

基本上,您需要用您选择的语言(至少一种支持大对象 API 的语言,包括 plpgsql)编写大约 10 行代码才能执行此转换。

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

将 bytea 列转换为 OID,同时保留值 的相关文章

  • 手动更改postgresql中查询的执行计划?

    是否可以在postgresql中手动更改执行计划的操作顺序 例如 如果我总是想在过滤之前进行排序操作 尽管这在 postgresql 的正常使用中没有意义 是否可以通过例如手动强制执行该操作改变运营的内部成本 如果我实现自己的功能呢 是否可
  • 优化 LATERAL join 中的慢速聚合

    在我的 PostgreSQL 9 6 2 数据库中 我有一个查询 该查询根据一些股票数据构建计算字段表 它为表中的每一行计算 1 到 10 年的移动平均窗口 并将其用于周期性调整 具体来说 CAPE CAPB CAPC CAPS 和 CAP
  • C++ 强制转换运算符重载 [重复]

    这个问题在这里已经有答案了 我有一个只有一个 int 成员的类 例如 class NewInt int data public NewInt int val 0 constructor data val int operator int N
  • 如何在c中断言两个类型相等?

    在 C 中如何断言两种类型相等 在 C 中 我会使用 std is same 但搜索 StackOverflow 和其他地方似乎只能给出 C 和 C 的结果 在C中没有办法做到这一点吗 请注意 这不是询问变量是否具有某种类型 而是询问两个类
  • 如何在连接到 Heroku PostgreSQL 的 Flask 应用程序上处理更多并发用户?

    Heroku 上的 Flask API 有许多端点 它们在将 json 化结果返回给客户端之前在我的 Heroku PostgreSQL 数据库上运行查询 我当前的计划是 Hobby Basic 层 因此数据库最多只能处理 20 个连接 如
  • 如何计算 Postgres 上图表中所有连接的节点(行)?

    我的桌子有account id and device id One account id可以有多个device ids 反之亦然 我正在尝试计算每个连接的多对多关系的深度 Ex account id device id 1 10 1 11
  • 在 PostgreSql 中计算百分比

    例如我有一个这样的表 string adm A 2 A 1 B 2 A 1 C 1 A 2 通过 SQL 查询 我想要这样的结果 string perc adm A 50 B 100 C 0 我想要每个字符串中数字 2 出现的百分比 我可以
  • Postgres JSON 数据类型 Rails 查询

    我正在使用 Postgres 的 json 数据类型 但想要使用嵌套在 json 中的数据进行查询 排序 我想在 json 数据类型上使用 where 进行订购或查询 例如 我想查询关注者数量 gt 500 的用户 或者我想按关注者或关注数
  • pg_dump 与 pg_dumpall?使用哪一个来进行数据库备份?

    I tried pg dump然后在另一台机器上我尝试导入 sql 并填充数据库 我看到 CREATE TABLE ERROR role prod does not exist CREATE TABLE ERROR role prod do
  • 如何存储没有年份部分的生日?

    类似问题 Postgres 生日选择 https stackoverflow com questions 6913719 postgres birthdays selection 我们正在设计一项新功能 我们将存储人们生日的月份和日期部分
  • 如何在 Django QuerySet 中将 DateField() + TimeField() 转换为本地时间?

    我的模型为这些字段 date models DateField 开始时间 models TimeField 结束时间 models TimeField 我想用以下方式注释查询集start datetime and end datetime
  • postgresql 登录到另一个表时发生冲突

    我正在使用 PostgreSQL 9 5 并尝试使用批量插入每天插入数百万行 INSERT INTO tours as cst adults country id price VALUES 3 129 80 2 119 120 on con
  • postgresql:插入...(选择*...)

    我不确定它是否是标准 SQL INSERT INTO tblA SELECT id time FROM tblB WHERE time gt 1000 我正在寻找的是 如果 tblA 和 tblB 位于不同的数据库服务器中怎么办 Postg
  • 如何避免情绪低落?

    我有一个实现状态模式每个状态处理从事件队列获取的事件 根据State因此类有一个纯虚方法void handleEvent const Event 事件继承基础Event类 但每个事件都包含其可以是不同类型的数据 例如 int string
  • PostgreSQL 错误 42501:架构权限被拒绝

    我正在 ASP NET 中构建一个用户注册系统 使用 PostgreSQL 数据库来维护用户信息 作为注册过程的一部分 用户会收到一条确认消息 他们必须单击其中的链接来验证其电子邮件地址 然后 他们将进入一个可以创建密码的页面 一旦用户提供
  • SQL查询查找具有特定数量关联的行

    使用 Postgres 我有一个架构conversations and conversationUsers Each conversation有很多conversationUsers 我希望能够找到具有确切指定数量的对话conversati
  • 过滤器的 Scala 集合类型

    假设您有一个 List 1 1 其类型为 List Any 这当然是正确的且符合预期 现在如果我像这样映射列表 scala gt List 1 1 map case x Int gt x case y String gt y toInt 结
  • SELECT 在 PL/pgSQL 函数中引发异常

    我想在函数内实现循环 但收到此错误 ERROR 查询没有结果数据的目标 代码 CREATE OR REPLACE FUNCTION my function ill int ndx bigint RETURNS int AS DECLARE
  • 如何在 PostgreSQL 中返回不同时区的当前日期

    我正在开发一个使用东部时间并将数据库设置为太平洋时间的应用程序 这已经引起了一些问题 但我们被告知不可能有其他方式 所以我们只能解决它 不管怎样 我遇到的麻烦之一就是获取今天的约会 由于数据库位于太平洋 如果我使用以下命令询问今天的日期cu
  • PostgreSQL:删除数据库但数据库仍然存在[重复]

    这个问题在这里已经有答案了 我是 PostgreSQL 的新手 我尝试着理解它 我熟悉数据库和MySQL 我正在尝试删除我创建的数据库 因为 psql 似乎忽略了我尝试通过 Django 推送的更改 当我执行时 l我得到以下回复 List

随机推荐

  • 如何在 WildFly 10 中动态更改 JMS 队列 MDB 池大小

    我正在使用 WildFly 10 1 它随 Artemis 作为新的 JMS 提供程序提供 但我无法找到如何动态更改特定 MDB 的消费者线程数 我有一个队列和一个使用队列中消息的消息侦听器 MDB 现在我想动态控制域必须启动的最大消费者线
  • C# 在 VSTO 加载项中获取正在运行的 Outlook 实例

    我正在尝试在 Excel 加载项中获取 Outlook 应用程序对象 如果有正在运行的 Outlook 实例 它应该得到这一点 如果没有 它应该使用 Outlook 对象模型创建一个 这是我现在的代码 public static Outlo
  • 从Field中获取值,发送到db函数,将值返回到Field

    我有一个工作指示在马克西莫 工单应用程序具有自定义字段 FieldA 你好 FieldB 我想从中获取价值FieldA并将其传递给function在 Oracle 数据库中 CREATE OR REPLACE function hello
  • 连接被拒绝 postgres docker

    我用 spring boot spring jpa 数据制作了一个小应用程序 它连接到 dockerized postgres 实例 即使我尝试通过以下方式连接 它也工作得很好 psql 到 dockerized postgres 实例中
  • 自动选中 woocommerce 登录表单上的“记住我”框?

    如何自动选中 woocommerce 登录表单上的 记住我 框 p class form row p
  • 在 Windows XP 中将剪贴板传递给批处理

    使用 Windows XP 我想将文本 URL 复制到剪贴板 然后运行将使用该 URL 的批处理文件 我知道如果 Clip exe 漂浮在周围 则相反的情况也是可能的 我用我自己的CLIPTEXT程序 这是一个非常简单的 5 行 pasca
  • 将命令的输出存储在 Bash 变量中。输出正在运行而不是存储

    我试图将 Bash 中命令的输出存储在变量中 但不是存储输出 而是将其解释为命令并运行 那不是我想要的 tmp line awk print 1 这将运行输出awk作为命令 echo line awk print 1 这会打印出我想要存储在
  • Oreo 8.0 中的推送通知问题

    将应用程序更新到 8 1 后 未显示通知 我修复了它 现在 待处理的意图没有按预期工作 收到通知后 如果应用程序在后台 我将无法导航到该应用程序 并且如果它已关闭 则不会启动 private void sendNotify String m
  • Yaml 架构验证 powershell

    我正在与powershell yaml将我的 YAML 解析为 PowerShell 对象 目前 我在验证 YAML 架构时遇到问题 我用过这个包yaml 架构验证器对于我的 javascript 项目 我找不到任何熟悉的函数 模块来帮助我
  • 使用 Python 中的 PIL 或 OpenCV 将图像粘贴到两个给定坐标处的另一图像,并更改不透明度

    我有两个具有给定点的图像 每个图像一个点 需要对齐 以便结果图像是两个图像的总和 而图像 2 以 40 的不透明度粘贴在图像 1 上 我已经采取了这个question考虑在内 但我们的情况并不完全匹配 因为图像坐标是由用户提供的 并且图像可
  • Linux 中从 EBCDIC 到 UTF8 的转换

    我已经使用 Perl 从我们的数据库 AS 400 DB2 导入了一个表 问题在于该字符串是用 EBCDIC Latin 1 意大利语 编码的 如何在 Linux bash 中将生成的文件转换为纯 utf 8 从 开始 iconv f EB
  • 使用 XML 文件将 url 参数传递给 Zend_Navigation

    我正在使用 Zend Framework 1 10 8 我想在我的layout phtml 中创建一个面包屑部分 我的菜单中有一些链接具有动态 url 参数 例如http mydomain com editor edit id 42 我试图
  • 在 Python 中复制 Javascript 按位运算

    我正在尝试在 Python 中复制一个简单的按位 Javascript 操作 Javascript gt 0xA867Df55 2825379669 gt 0xA867Df55 0 1469587627 Python gt gt gt 0x
  • WP7 可以发送 HTML 邮件吗?

    WP7 可以发送 HTML 电子邮件吗 我可能忽略了它 但 EmailComposeTask 中似乎没有用于指定这一点的参数 尽管该设备能够接收和显示 HTML 电子邮件 EmailComposeTask不提供 API 来让您发送 HTML
  • openpyxl - 能够从图表中删除边框吗?

    使用 openpyxl 插入到我的工作表中的图表有边框 有没有办法通过 styles Style styles borders 模块将图表 饼图 条形图 的样式设置为没有边框 或者至少设置一个细白色边框 以便它们可以无边框打印 我在该对象上
  • 目前 Windows 上的 Git 存在哪些问题

    我想下载 msysgithere 它这样说 msysGit 项目没有足够的贡献者来提供商业级支持 如果您没有办法解决您的问题 可能有来自 msysGit 邮件列表的宝贵建议 或者吸引人们谁能解决它们 你的问题就不太可能得到解决 这听起来令人
  • 使用预编译的 Azure 函数库生成错误

    最近 我转换了一个使用 C 脚本的 Azure 函数 csx 到预编译的类库 使用适用于 Azure Functions 的 Visual Studio Studio 工具 它在 Visual Studio 2017 中成功构建 以及运行和
  • 重复,但仍然使用标准输出

    我可以施展一些魔法吗dup2 or fcntl 这样我将 stdout 重定向到一个文件 即 写入描述符 1 的任何内容都会转到一个文件 但是如果我使用其他机制 它会转到终端输出吗 如此松散 int original stdout some
  • 将字符串转换回枚举

    有没有更干净 更聪明的方法来做到这一点 我正在访问数据库来获取数据来填充对象 并将数据库字符串值转换回其枚举 我们可以假设数据库中的所有值确实是匹配枚举中的值 有问题的行是下面设置 EventLog ActionType 的行 我开始质疑我
  • 将 bytea 列转换为 OID,同时保留值

    我正在尝试改变一个bytea具有类型的列oid并仍然保留价值观 我尝试过使用如下查询 ALTER TABLE mytable ADD COLUMN mycol tmp oid UPDATE mytable SET mycol tmp CAS