Tag: sqlite3

sqlite3_native.so:分段错误

我遇到了这个sqlite3问题,无法弄清楚原因; 我浏览了这个论坛好几个小时,但是找不到类似的问题。 我正在使用ruby 1.9.3,但错误消息似乎调用了ruby 1.8.7; 我甚至卸载了ruby 1.8.7然后sqlite3然后重新安装它但是没有解决问题 我正在运行rails 3.2.8 user1@company.com [~/rails_apps/myapp]# rails -v Rails 3.2.8 和ruby1.9.3 user1@company.com [~/rails_apps/myapp]# ruby -v ruby 1.9.3p286 (2012-10-12 revision 37165) [x86_64-linux] 卸载ruby1.8.7 user1@company.com [~/rails_apps/myapp]# rvm uninstall 1.8.7 /home3/user1/.rvm/src/ruby-1.8.7-p371 has already been removed. /home3/user1/.rvm/rubies/ruby-1.8.7-p371 has already been removed. 卸载了sqlite3 user1@company.com [~/rails_apps/myapp]# gem uninstall sqlit3 INFO: gem “sqlit3” is not installed user1@company.com […]

新Rails 3.2.8项目出错 – “require”:无法加载此类文件 – sqlite3 / sqlite3_native(LoadError)

我刚刚创建了一个新的亚马逊Linux实例并安装了ruby 1.9.3和rails 3.2.8。 创建新项目后,我立即收到sqlite3导致的失败。 错误是: [root@xxxxx fun]# rails server /usr/local/share/gems/gems/sqlite3-1.3.6/lib/sqlite3.rb:6:in `require’: cannot load such file — sqlite3/sqlite3_native (LoadError) from /usr/local/share/gems/gems/sqlite3-1.3.6/lib/sqlite3.rb:6:in `rescue in ‘ from /usr/local/share/gems/gems/sqlite3-1.3.6/lib/sqlite3.rb:2:in `’ 我已经确认sqlite3在rails之外工作正常(即我成功创建了一个数据库,使用ruby代码插入/读取)。 这是在irb中加载sqlite3的快速演示: irb(main):001:0> require ‘sqlite3’ => true 我已经完成了捆绑安装的最新动态。 sqlite3的版本是1.3.6 我安装了以下软件包: ruby19-1.9.3.0-7.17.amzn1.i686 ruby19-devel-1.9.3.0-7.17.amzn1.i686 ruby19-irb-1.9.3.0-7.17.amzn1.noarch ruby19-libs-1.9.3.0-7.17.amzn1.i686 rubygem19-io-console-0.3-7.17.amzn1.i686 rubygem19-rdoc-3.9.4-7.17.amzn1.i686 rubygems19-1.8.11-7.17.amzn1.noarch sqlite-3.6.20-1.8.amzn1.i686 sqlite-devel-3.6.20-1.8.amzn1.i686 关于我可以尝试让事情发挥作用的任何想法? 谢谢! 更新为了“有趣”我从我的Gemfile中注释掉了gem sqlite3行并再次尝试了“rails server”。 首先,它抱怨没有javascript运行时(我可以修复)但是它得到了以下内容。 我的安装似乎存在严重错误。 [root@xxxx fun]# rails […]

安装sqlite3(1.3.11)时发生错误,Bundler无法继续

所以我试图$ bundle install –without production之前我$ git push heroku master但我不断得到这个错误 $ bundle install –without production Fetching gem metadata from https://rubygems.org/………… Fetching version metadata from https://rubygems.org/… Fetching dependency metadata from https://rubygems.org/.. Resolving dependencies…… Using rake 10.4.2 Using i18n 0.7.0 Using json 1.8.3 Using minitest 5.8.3 Using thread_safe 0.3.5 Using tzinfo 1.2.2 Using activesupport 4.1.8 Using builder 3.2.2 […]

无法在Ruby 2运行rails 3.2.11中加载此类文件–sqlite3 / sqlite3_native(LoadError)

我试图运行rails s时遇到上述错误。 bundle show sqlite3产生 c:/ruby/lib/ruby/gems/2.0.0/gems/sqlite3-1.3.7-x86-mingw32 (这意味着, 喘气 ,我在Windows XP机器上运行它。) 我也有: group :development, :test do … gem ‘sqlite3’ … end 我没有找到任何其他类似的(环境方面)答案。 有帮助吗?

为Ruby SQLite插入转义字符串

我正在创建一个Ruby脚本,将大约150k行的制表符分隔文本文件导入SQLite。 到目前为止: require ‘sqlite3’ file = File.new(“/Users/michael/catalog.txt”) string = [] # Escape single quotes, remove newline, split on tabs, # wrap each item in quotes, and join with commas def prepare_for_insert(s) s.gsub(/’/,”\\\\'”).chomp.split(/\t/).map {|str| “‘#{str}'”}.join(“, “) end file.each_line do |line| string << prepare_for_insert(line) end database = SQLite3::Database.new("/Users/michael/catalog.db") # Insert each string into the database string.each do […]

SQLite3 :: SQLException:迁移时重复的列名

我目前正在关注Ruby on Rails教程,我在https://www.railstutorial.org/book/updating_and_deleting_users#sec-administrative_users每次运行bundle exec rake db:migrate时都会出现以下错误: SQLite3::SQLException: duplicate column name: remember_digest: ALTER TABLE “users” ADD “remember_digest” varchar/home/mclacs14/.rvm/gems/ruby-2.0.0-p481@railstutorial_rails_4_0/gems/sqlite3-1.3.9/lib/sqlite3/database.rb:91:in `initialize’

$ bundle exec rake db:reset命令raise不能删除db / development.sqlite3

我试图运行$ bundle exec rake db:reset并在控制台上找到以下内容 Couldn’t drop db/development.sqlite3 : # db/development.sqlite3 already exists — create_table(“users”, {:force=>true}) -> 0.3940s — add_index(“users”, [“email”], {:name=>”index_users_on_email”, :unique=>true}) -> 0.1280s — initialize_schema_migrations_table() -> 0.0010s — assume_migrated_upto_version(20120419034627, [“c:/sample_app/db/migrate “]) -> 0.0040s 我该如何解决? 编辑我正在关注一个教程,它告诉我运行上面的命令来安全地删除数据库中的所有数据。 我也在使用管理员帐户。

rails上的sqlite3:使用collat​​e nocase创建create_table

使用带有ruby v2.3.0p0的rails 4.2.0 我想创建不区分大小写的索引,因为我的大部分搜索都不区分大小写,我不想每次都进行全表搜索。 所以在我的create_table迁移中,我尝试添加如下行: add_index :events, :name, :COLLATE => :NOCASE 当我迁移时,我得到: == 20150515163641 CreateEvents: migrating ===================================== — create_table(:events) -> 0.0018s — add_index(:events, :submitter, {:COLLATE=>:NOCASE}) rake aborted! StandardError: An error has occurred, this and all later migrations canceled: Unknown key: :COLLATE. Valid keys are: :unique, :order, :name, :where, :length, :internal, :using, :algorithm, :type 如何使用SQLITE3和rails在我的迁移文件中创建不区分大小写的索引? 更新———————— […]

错误:rails中的’不兼容的库版本’sqlite3-1.3.11

我在Ubuntu系统上工作(16.04)。 我的问题是每当我设置任何rails项目并尝试运行rails s然后我得到’不兼容的库版本’错误sqlite3如下所示。 /home/jiggs/.rvm/gems/ruby-2.3.1@albumriver/gems/activesupport-4.0.0/lib/active_support/values/time_zone.rb:282: warning: circular argument reference – now /home/jiggs/.rvm/gems/ruby-2.3.1@albumriver/gems/sqlite3-1.3.11/lib/sqlite3.rb:6:in `require’: incompatible library version – /home/jiggs/.rvm/gems/ruby-2.3.1@albumriver/gems/sqlite3-1.3.11/lib/sqlite3/sqlite3_native.so (LoadError) from /home/jiggs/.rvm/gems/ruby-2.3.1@albumriver/gems/sqlite3-1.3.11/lib/sqlite3.rb:6:in `rescue in ‘ from /home/jiggs/.rvm/gems/ruby-2.3.1@albumriver/gems/sqlite3-1.3.11/lib/sqlite3.rb:2:in `’ from /usr/lib/ruby/vendor_ruby/bundler/runtime.rb:77:in `require’ from /usr/lib/ruby/vendor_ruby/bundler/runtime.rb:77:in `block (2 levels) in require’ from /usr/lib/ruby/vendor_ruby/bundler/runtime.rb:72:in `each’ from /usr/lib/ruby/vendor_ruby/bundler/runtime.rb:72:in `block in require’ from /usr/lib/ruby/vendor_ruby/bundler/runtime.rb:61:in `each’ from /usr/lib/ruby/vendor_ruby/bundler/runtime.rb:61:in `require’ from /usr/lib/ruby/vendor_ruby/bundler.rb:99:in `require’ from /home/jiggs/sites/albumriverfinal/config/application.rb:7:in […]

SQLite3“忘记”使用外键

我正在使用Ruby和SQLite3,但我在Sqlite3中使用外键的尝试很不幸。 根据sqlite3 –version ,安装了3.7.13版。 据我所知,自3.6.x版以来,Sqlite3支持外键。 我知道默认情况下外键被禁用,必须使用PRAGMA foreign_keys = ON;激活PRAGMA foreign_keys = ON; 。 在我的Ruby db-create-script中,我正在做这样的事情: sql = <<-SQL PRAGMA foreign_keys = ON; CREATE TABLE apps ( id …. ); CREATE TABLE requests ( … app_id INTEGER NOT NULL, FOREIGN KEY(app_id) REFERENCES apps(id), ); … SQL db.execute_batch(sql) 不幸的是,我可以愉快地将行插入到具有未知app-id的requests ,它可以工作,但当然不应该。 有意思:直接使用sqlite3 shell,我可以观察到以下行为: $ sqlite3 database.db sqlite> PRAGMA […]