Forum: Ruby on Rails Microsoft SQL Server has me stumped

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
6ef8cb7cd7cd58077f0b57e4fa49a969?d=identicon&s=25 Brian Hogan (Guest)
on 2006-03-24 22:18
(Received via mailing list)
I'm tinkering around with an old legacy table in SQL Server 2000.
Ruby 1.8.4, most recent ADO.rb file from RubyForge, Rails 1.0

 Here's the model:

class InventoryItem < ActiveRecord::Base
  set_table_name  "[_SMDBA_].[_INVENTOR_]"
  set_primary_key  "sequence"
end

Everything works fine. I can retrieve records without issue.

However, when create a new instance of InventoryItem, there are no
attributes returned!

i = InventoryItem.new
#<InventoryItem:0x365eee0 @new_record=true, @attributes={}>

Anyone know where I would start looking?

Seems strange then that InventoryItem.find(:first) would return a full
attribute set with all of the data appropriately assigned....

Thanks in advance!
7cda78d70ab775710f6fa24e0a5b68db?d=identicon&s=25 Emin Hasanov (Guest)
on 2006-03-24 23:16
(Received via mailing list)
Sorry, but what attributes are you expecting when creating brand new
record
using InventoryItem.new?
6ef8cb7cd7cd58077f0b57e4fa49a969?d=identicon&s=25 Brian Hogan (Guest)
on 2006-03-25 05:45
(Received via mailing list)
Well, generally, I'd have an attributes hash filled with the fields in
my
table.
I have a column in the table called "computername"
When I do

i = InventoryItem.new
i.computername = 'test'

I get a NoMethodException.

It's really strange. It happens with all of my other tables as well.
E28c35323f624b8b9ed8712e25105454?d=identicon&s=25 Ray Baxter (Guest)
on 2006-03-25 10:16
(Received via mailing list)
Brian Hogan wrote:

>
>     Anyone know where I would start looking?

Can you update an existing InventoryItem?
F444e87b1967cc9cde6b48ad52fb87cd?d=identicon&s=25 Paulie (Guest)
on 2006-03-25 12:34
Have you tried making a copy of the table without the underscore
characters and see if that works?

Just thinking that the underscores have meaning and may be clouding the
logic.

Does the sequence field have meaing in rails?
6ef8cb7cd7cd58077f0b57e4fa49a969?d=identicon&s=25 Brian Hogan (Guest)
on 2006-03-25 19:04
(Received via mailing list)
Ugh. If I have to remove the underscores then there's no way I can use
Rails
for this project. These are legacy tables for a third-party (purchased)
system.

As for updating, it appears to be working just fine.
6ef8cb7cd7cd58077f0b57e4fa49a969?d=identicon&s=25 Brian Hogan (Guest)
on 2006-03-27 18:51
(Received via mailing list)
I found my own solution to this problem. The square  brackets that wrap
the
table name had to be removed.

set_table_name  "_SMDBA_._INVENTOR_"

instead of
set_table_name  "[_SMDBA_].[_INVENTOR_]"

Thanks for the suggestions.
This topic is locked and can not be replied to.