小编Eri*_*erg的帖子

使用Clojure插入PostgreSQL数组

我找不到用Clojure插入Postgres的数组类型的方法.

(sql/insert! db :things {:animals ["cow" "pig"]})
Run Code Online (Sandbox Code Playgroud)

没有按照我的预期工作.错误信息:

PSQLException Can't infer the SQL type to use for an instance of clojure.lang.PersistentVector. Use setObject() with an explicit Types value to specify the type to use.  org.postgresql.jdbc2.AbstractJdbc2Statement.setObject (AbstractJdbc2Statement.java:1936)
Run Code Online (Sandbox Code Playgroud)

即使是我能找到的最直接的SQL访问也行不通:

(sql/execute! db "INSERT INTO things (animals) VALUES ('{\"cow\", \"pig\"}')")
Run Code Online (Sandbox Code Playgroud)

真的不知道这里发生了什么:

ClassCastException java.lang.Character cannot be cast to java.lang.String  clojure.java.jdbc/prepare-statement (jdbc.clj:419)
Run Code Online (Sandbox Code Playgroud)

当然一定有可能吗?如果没有辅助函数,那么通过某种方式执行原始SQL.

sql postgresql jdbc clojure

10
推荐指数
2
解决办法
4009
查看次数

使用 Anchor 进行 Solana 代币传输

我在进行我认为简单的代币转移时遇到了问题。

首先是一些代码:

#[derive(Accounts)]
#[instruction(amount: u64)]
pub struct TransferTokens<'info> {
    #[account(mut)]
    pub sender: Signer<'info>,
    #[account(mut)]
    pub sender_tokens: Account<'info, TokenAccount>,
    pub recipient_tokens: Account<'info, TokenAccount>,
    pub mint: Account<'info, Mint>,
    #[account(address = SYSTEM_PROGRAM_ID)]
    pub system_program: Program<'info, System>,
    #[account(address = TOKEN_PROGRAM_ID)]
    pub token_program: Program<'info, Token>,
}

pub fn transfer_tokens(ctx: Context<TransferTokens>, amount: u64) -> ProgramResult {
    let sender = &ctx.accounts.sender;
    let sender_tokens = &ctx.accounts.sender_tokens;
    let recipient_tokens = &ctx.accounts.recipient_tokens;
    let token_program = &ctx.accounts.token_program;

    transfer(
        CpiContext::new(
            token_program.to_account_info(),
            Transfer {
                from: sender_tokens.to_account_info(),
                to: recipient_tokens.to_account_info(),
                authority: sender.to_account_info(),
            },
        ),
        amount, …
Run Code Online (Sandbox Code Playgroud)

solana anchor-solana

6
推荐指数
1
解决办法
3025
查看次数

标签 统计

anchor-solana ×1

clojure ×1

jdbc ×1

postgresql ×1

solana ×1

sql ×1