【发布时间】:2014-02-21 11:39:06
【问题描述】:
我在 Rails 中的单元测试有问题,不知道如何解决。
如果我运行 rake test:units,我会收到以下错误:
rake aborted!
OCIError: ORA-01031: insufficient privileges: CREATE TABLE
"SCHEMA MIGRATIONS" ("VERSION" VARCHAR(255) NOT NULL)
stmt.c:312:in oci8lib_191.so
Tasks: TOP => test:units => test:prepare => db:test:prepare => db:abort_if_pedning_migrations
我当前的 Gemfile 是
source 'http://rubygems.org'
gem 'rails', '~> 3.1.12'
gem 'ruby-oci8', '~> 2.0.4'
gem 'activerecord-oracle_enhanced-adapter', '~> 1.3.2'
gem 'ruby-plsql', '~> 0.4.3'
gem 'sqlite3'
gem 'thin'
group :assets do
gem 'sass-rails', '~> 3.1.7'
gem 'coffee-rails', '~> 3.1.1'
gem 'uglifier', '>= 1.0.3'
end
gem 'jquery-rails'
database.yml 包含以下数据:
test:
adapter: oracle_enhanced
database: service_name
username: db_admin
password: test
host: name_of_host
port: 1531
database.yml 中的数据同样适用于 oracle sql developer 中的数据库连接。
【问题讨论】:
-
试试这个命令(对于 linux debian)
sudo apt-get install build-essential openssl libreadline6 libreadline6-dev curl git-core zlib1g zlib1g-dev libssl-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt-dev autoconf libc6-dev ncurses-dev automake libtool bison subversion imagemagick graphicsmagick libmagickcore-dev libmagickwand-dev libreadline-dev然后再做一次 -
您的用户拥有
insufficient privileges。也许这个链接可以帮助你dba-oracle.com/t_ora_01031.htm -
我的用户应该有管理员权限。但我会看看 oracle-link。而且我不喜欢它,但我目前正在使用 Windows 计算机。
-
我已经阅读了这篇文章,但我无法访问托管数据库的服务器。我已经尝试使用 SQL Developer 进行一些更改,并且对于测试数据库,我可以创建和删除表。这还不够吗?
标签: ruby-on-rails oracle testing oracle-call-interface