SQL 在 Postgres 中插入 file.exe

Posted

技术标签:

【中文标题】SQL 在 Postgres 中插入 file.exe【英文标题】:SQL to Insert a file.exe in Postgres 【发布时间】:2017-07-26 18:08:19 【问题描述】:

我怎么能在 postgres 中使用 SQL 插入一个 file.exe ???

我的桌子 创建表versoaatualizada( id 整数 NOT NULL, 名称不同, arquivo Oid, 约束 pk_arquivo 主键 (id) ); 创建序列 seq_arquivo INCREMENT 1 START 1;

我的 Java 代码

但我发现了一些问题... 我有一个例外(将 bigInteger 转换为 Oid..)

public File getFile(int id) 
        File f = null;
        try 
            List<Object[]> lista = getEntityManager().createNativeQuery("sqlWorking").getResultList();
            Oid bytes;
            Object[] a = lista.get(0);
            bytes = (Oid) a[2];// oid field
            f = new File("C:.......");
            FileOutputStream fos = new FileOutputStream(f);
            fos.write(bytes.getDER());
            fos.close();
            return f;
         catch (Exception ex) 
            ex.printStackTrace();
        
        return null;
    

【问题讨论】:

【参考方案1】:

arquivo 列的类型应为 oid,根据 function documentation。

【讨论】:

以上是关于SQL 在 Postgres 中插入 file.exe的主要内容,如果未能解决你的问题,请参考以下文章

sql Postgres在插入时使用RETURNING进行分区

带有Java的Postgres我无法插入数据

Postgres:如果不存在则插入

Psycopg2 在 postgres 数据库中插入 python 字典

Postgres SQL 触发器在 TableB 上插入或更新后使用新值更新 TableA.column

使用触发器将 postgres SQL 插入语句拆分为 2 个表