# Does active record really work for oracle

**URL:** <https://www.ruby-forum.com/t/does-active-record-really-work-for-oracle/112937>\
**Category:** Rails\
**Created:** [August 24, 2007, 5:58pm UTC](https://www.ruby-forum.com/t/does-active-record-really-work-for-oracle/112937 "2007-08-24T17:58:28Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![bitsmith](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/b/9de053/32.png) [@bitsmith](https://www.ruby-forum.com/u/bitsmith)\
**Post date:** [August 24, 2007, 5:58pm UTC](https://www.ruby-forum.com/t/does-active-record-really-work-for-oracle/112937/1 "2007-08-24T17:58:28Z")

</div>

i get this when i try to unit test:

C:\railsspace\>ruby c:\railsspace\test\functional\user\_controller\_test.rb  
Loaded suite c:/railsspace/test/functional/user\_controller\_test  
Started  
…E.  
Finished in 0.578 seconds.

1. Error:  
test\_registration\_success(UserControllerTest):  
RuntimeError: “DESC users” failed; does it exist?  
(eval):3:in `describe' C:/ruby186/ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record /connection_adapters/oracle_adapter.rb:316:in`columns’  
C:/ruby186/ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active\_record  
/base.rb:763:in `columns' C:/ruby186/ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record /base.rb:2060:in`attributes\_from\_column\_definition\_without\_lock’  
C:/ruby186/ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active\_record  
/locking/optimistic.rb:45:in `attributes_from_column_definition' C:/ruby186/ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record /base.rb:1502:in`initialize\_without\_callbacks’  
C:/ruby186/ruby/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active\_record  
/callbacks.rb:225:in `initialize' c:/railsspace/config/../app/controllers/user_controller.rb:10:in`new’  
c:/railsspace/config/…/app/controllers/user\_controller.rb:10:in  
`register' C:/ruby186/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controll er/base.rb:1095:in`send’  
C:/ruby186/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action\_controll  
er/base.rb:1095:in `perform_action_without_filters' C:/ruby186/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controll er/filters.rb:632:in`call\_filter’  
C:/ruby186/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action\_controll  
er/filters.rb:619:in `perform_action_without_benchmark' C:/ruby186/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controll er/benchmarking.rb:66:in`perform\_action\_without\_rescue’  
C:/ruby186/ruby/lib/ruby/1.8/benchmark.rb:293:in `measure' C:/ruby186/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controll er/benchmarking.rb:66:in`perform\_action\_without\_rescue’  
C:/ruby186/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action\_controll  
er/rescue.rb:83:in `perform_action' C:/ruby186/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controll er/base.rb:430:in`send’  
C:/ruby186/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action\_controll  
er/base.rb:430:in `process_without_filters' C:/ruby186/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controll er/filters.rb:624:in`process\_without\_session\_management\_support’  
C:/ruby186/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action\_controll  
er/session\_management.rb:114:in `process_without_test' C:/ruby186/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controll er/test_process.rb:15:in`process’  
C:/ruby186/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action\_controll  
er/test\_process.rb:382:in `process' C:/ruby186/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controll er/test_process.rb:353:in`post’  
c:/railsspace/test/functional/user\_controller\_test.rb:50:in  
`test\_registrati  
on\_success’

4 tests, 12 assertions, 0 failures, 1 errors

def test\_registration\_success  
post :register, :user =\> { :screen\_name =\> “new\_screen\_name”,  
:email =\> “removed\_email\_address@domain.invalid”,  
:password =\> “long\_enough\_password” }  
# Test assignment of user.  
user = assigns(:user)  
assert\_not\_nil user  
# Test new user in database.  
new\_user = User.find\_by\_screen\_name\_and\_password(user.screen\_name,  
user.password)  
assert\_equal new\_user, user  
# Test flash and redirect.  
assert\_equal “User #{new\_user.screen\_name} created!”, flash[:notice]  
assert\_redirected\_to :action =\> “index”  
end

---

<div class="post-metadata">

**Author:** ![bitsmith](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/b/9de053/32.png) [@bitsmith](https://www.ruby-forum.com/u/bitsmith)\
**Post date:** [August 24, 2007, 6:07pm UTC](https://www.ruby-forum.com/t/does-active-record-really-work-for-oracle/112937/2 "2007-08-24T18:07:20Z")

</div>

Dave R. add:  
def dba\_connect  
tns=“railt”  
puts “NOW LOGGING ONTO BANNER #{tns}”  
OCI8.new(“scott”,“tiger”,"#{tns}")  
rescue OCIException  
puts “NOW LOGGING ONTO BANNER #{tns}.WORLD”  
OCI8.new(“scott”,“tiger”,"#{tns+".WORLD"}")  
end  
nil  
$conn=dba\_connect  
LOGGING ONTO BANNER railt  
#\<OCI8:0x30c9fc4 @privilege=nil, @ctx=[0, #Mutex:0x30c9f88, nil,  
65535], @  
#OCISvcCtx:0x30c9f74, @prefetch\_rows=nil\>  
recs=$conn.exec(“Desc Users”)  
Error: ORA-00900: invalid SQL statement  
from C:/ruby186/ruby/lib/ruby/site\_ruby/1.8/oci8.rb:597:in  
`execute' from C:/ruby186/ruby/lib/ruby/site_ruby/1.8/oci8.rb:597:in`exec’  
from C:/ruby186/ruby/lib/ruby/site\_ruby/1.8/oci8.rb:129:in  
`do_ocicall' from C:/ruby186/ruby/lib/ruby/site_ruby/1.8/oci8.rb:597:in`exec’  
from C:/ruby186/ruby/lib/ruby/site\_ruby/1.8/oci8.rb:204:in `exec' from (irb):20 recs=$conn.exec("Desc users") Error: ORA-00900: invalid SQL statement from C:/ruby186/ruby/lib/ruby/site_ruby/1.8/oci8.rb:597:in`execute’  
from C:/ruby186/ruby/lib/ruby/site\_ruby/1.8/oci8.rb:597:in `exec' from C:/ruby186/ruby/lib/ruby/site_ruby/1.8/oci8.rb:129:in`do\_ocicall’  
from C:/ruby186/ruby/lib/ruby/site\_ruby/1.8/oci8.rb:597:in `exec' from C:/ruby186/ruby/lib/ruby/site_ruby/1.8/oci8.rb:204:in`exec’  
from (irb):21  
but  
recs=$conn.exec(“select \* from users”) …does

---

<div class="post-metadata">

**Author:** ![bitsmith](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/b/9de053/32.png) [@bitsmith](https://www.ruby-forum.com/u/bitsmith)\
**Post date:** [August 24, 2007, 6:09pm UTC](https://www.ruby-forum.com/t/does-active-record-really-work-for-oracle/112937/3 "2007-08-24T18:09:06Z")

</div>

Dave R. wrote:

> i get this when i try to unit test:

What version of Oracle? Which client are you using?

Thanks,  
Tim
