gpt4 book ai didi

ruby-on-rails - 在 PostgreSQL 中使用 Sequel gem 插入数组

转载 作者:太空宇宙 更新时间:2023-11-03 17:55:31 25 4
gpt4 key购买 nike

我在代码中创建了一个具有以下模式的表

DB.create_table :Pokemon do
primary_key :id
String :first_name
String :last_name
String :email
String :zipcode
String :company_name
String :google_profile
String :skype
String :phone
String :about
String :linkedin_profile_url
String :company_url
column :needs , 'Text[]'
column :offering , 'Text[]'
end

为了满足需求和提供,我使用以下代码插入了一个字符串数组

pokes=DB[:Pokemon];
off=['hello1' , 'hello2']
nee= ['need1' , 'need2']
pokes.insert(:first_name => 'abcd' ,:last_name => 'mehandiratta', :offering => off , :needs => nee)

运行时出现错误

PG::Error: ERROR:  column "offering" is of type text[] but expression is of type record (Sequel::DatabaseError)
LINE 1: ...fering", "needs") VALUES ('abcd', 'mehandiratta', ('hello1',...
^
HINT: You will need to rewrite or cast the expression.
from /var/lib/gems/1.8/gems/sequel-3.43.0/lib/sequel/adapters/postgres.rb:145:in `execute_query'
from /var/lib/gems/1.8/gems/sequel-3.43.0/lib/sequel/database/logging.rb:33:in `log_yield'
from /var/lib/gems/1.8/gems/sequel-3.43.0/lib/sequel/adapters/postgres.rb:145:in `execute_query'
from /var/lib/gems/1.8/gems/sequel-3.43.0/lib/sequel/adapters/postgres.rb:132:in `execute'
from /var/lib/gems/1.8/gems/sequel-3.43.0/lib/sequel/adapters/postgres.rb:111:in `check_disconnect_errors'
from /var/lib/gems/1.8/gems/sequel-3.43.0/lib/sequel/adapters/postgres.rb:132:in `execute'
from /var/lib/gems/1.8/gems/sequel-3.43.0/lib/sequel/adapters/postgres.rb:413:in `_execute'
from /var/lib/gems/1.8/gems/sequel-3.43.0/lib/sequel/adapters/postgres.rb:242:in `execute'
from /var/lib/gems/1.8/gems/sequel-3.43.0/lib/sequel/adapters/postgres.rb:425:in `check_database_errors'
from /var/lib/gems/1.8/gems/sequel-3.43.0/lib/sequel/adapters/postgres.rb:242:in `execute'
from /var/lib/gems/1.8/gems/sequel-3.43.0/lib/sequel/database/connecting.rb:236:in `synchronize'
from /var/lib/gems/1.8/gems/sequel-3.43.0/lib/sequel/connection_pool/threaded.rb:104:in `hold'
from /var/lib/gems/1.8/gems/sequel-3.43.0/lib/sequel/database/connecting.rb:236:in `synchronize'
from /var/lib/gems/1.8/gems/sequel-3.43.0/lib/sequel/adapters/postgres.rb:242:in `execute'
from /var/lib/gems/1.8/gems/sequel-3.43.0/lib/sequel/dataset/actions.rb:801:in `execute'
from /var/lib/gems/1.8/gems/sequel-3.43.0/lib/sequel/adapters/postgres.rb:525:in `fetch_rows'
from /var/lib/gems/1.8/gems/sequel-3.43.0/lib/sequel/dataset/actions.rb:860:in `returning_fetch_rows'
from /var/lib/gems/1.8/gems/sequel-3.43.0/lib/sequel/dataset/actions.rb:341:in `insert'
from /var/lib/gems/1.8/gems/sequel-3.43.0/lib/sequel/adapters/shared/postgres.rb:1060:in `insert'
from /var/lib/gems/1.8/gems/sequel-3.43.0/lib/sequel/adapters/shared/postgres.rb:1069:in `insert'
from hello.rb:10

任何人都可以告诉一个合适的方法如何在 Sequel gem 中插入数组以及如何在列中添加文本数组

最佳答案

关于ruby-on-rails - 在 PostgreSQL 中使用 Sequel gem 插入数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14627010/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com