# How to set primary key in rails 2.0.2

**URL:** <https://www.ruby-forum.com/t/how-to-set-primary-key-in-rails-2-0-2/143487>\
**Category:** Rails\
**Created:** [July 19, 2008, 6:22am UTC](https://www.ruby-forum.com/t/how-to-set-primary-key-in-rails-2-0-2/143487 "2008-07-19T06:22:13Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![martin\_mercy2001](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/d2c977/32.png) [@martin\_mercy2001](https://www.ruby-forum.com/u/martin_mercy2001)\
**Post date:** [July 19, 2008, 6:22am UTC](https://www.ruby-forum.com/t/how-to-set-primary-key-in-rails-2-0-2/143487/1 "2008-07-19T06:22:13Z")

</div>

Dear friends,

I’m using rails 2.0.2. I have created a model sample and i have created  
columns using following codes

`
class CreateSamples < ActiveRecord::Migration
  def self.up
    create_table :samples, :id => false do |t|
      t.column :user_id, :integer, :limit => 10
      t.column :name, :string, :limit => 20
      t.column :age, :string, :limit => 3
      t.timestamps
    end
  end
def self.down
drop_table :samples
end
end
`

The default primary key is id and it is auto incremented. I have set id  
=\> false and i don’t want to use it again. I need to set my user\_id as  
primary key. Could any one suggest how to set the primary key other than  
id in rails 2.0.2

Thanks in advance

Regards,  
Jose Martin

---

<div class="post-metadata">

**Author:** ![martin\_mercy2001](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/d2c977/32.png) [@martin\_mercy2001](https://www.ruby-forum.com/u/martin_mercy2001)\
**Post date:** [July 19, 2008, 10:08am UTC](https://www.ruby-forum.com/t/how-to-set-primary-key-in-rails-2-0-2/143487/2 "2008-07-19T10:08:02Z")

</div>

in your user model write  
set\_primary\_key “user\_id”

On Jul 19, 9:22 am, dare ruby [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)

---

<div class="post-metadata">

**Author:** ![martin\_mercy2001](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/d2c977/32.png) [@martin\_mercy2001](https://www.ruby-forum.com/u/martin_mercy2001)\
**Post date:** [July 19, 2008, 10:41am UTC](https://www.ruby-forum.com/t/how-to-set-primary-key-in-rails-2-0-2/143487/3 "2008-07-19T10:41:31Z")

</div>

Bala kishore Pulicherla wrote:

> in your user model write  
> set\_primary\_key “user\_id”
> 
> On Jul 19, 9:22ï¿½am, dare ruby [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)

Dear bala,

Thanks for your suggestion. its working fine now.

Could you please provide details about auto incrementation for above  
mentioned primary key.

Thanks in advance

Regards,  
Jose Martin

---

<div class="post-metadata">

**Author:** ![martin\_mercy2001](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/d2c977/32.png) [@martin\_mercy2001](https://www.ruby-forum.com/u/martin_mercy2001)\
**Post date:** [July 19, 2008, 11:32am UTC](https://www.ruby-forum.com/t/how-to-set-primary-key-in-rails-2-0-2/143487/4 "2008-07-19T11:32:04Z")

</div>

u can put the id as itself as an auto increment and while ur creating  
the  
new user make the id to user\_id and update.

for ex.  
user = User.new(params[:user])  
if user.save!  
user\_id = user.id  
user.update\_attribute(:user\_id,"#{user.id})  
respond\_to |format| do  
ur - stuff  
end  
end

mean while i’ll find any :auto\_increment option is there ☹

On Sat, Jul 19, 2008 at 2:11 PM, dare ruby  
[removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)

---

<div class="post-metadata">

**Author:** ![martin\_mercy2001](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/d2c977/32.png) [@martin\_mercy2001](https://www.ruby-forum.com/u/martin_mercy2001)\
**Post date:** [July 19, 2008, 12:44pm UTC](https://www.ruby-forum.com/t/how-to-set-primary-key-in-rails-2-0-2/143487/5 "2008-07-19T12:44:38Z")

</div>

t.column :user\_id, :primary\_key, :null =\> false

hope this will work for u 🙂

On Sat, Jul 19, 2008 at 3:01 PM, bala kishore pulicherla \<

---

<div class="post-metadata">

**Author:** ![martin\_mercy2001](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/d2c977/32.png) [@martin\_mercy2001](https://www.ruby-forum.com/u/martin_mercy2001)\
**Post date:** [July 19, 2008, 12:47pm UTC](https://www.ruby-forum.com/t/how-to-set-primary-key-in-rails-2-0-2/143487/6 "2008-07-19T12:47:06Z")

</div>

Bala kishore Pulicherla wrote:

> t.column :user\_id, :primary\_key, :null =\> false
> 
> hope this will work for u 🙂
> 
> On Sat, Jul 19, 2008 at 3:01 PM, bala kishore pulicherla \<

Dear Bala,

Thanks for your very valuable information. I have used the above in my  
code and its working fine now

Thanks

regards,  
Jose Martin

---

<div class="post-metadata">

**Author:** ![martin\_mercy2001](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/d2c977/32.png) [@martin\_mercy2001](https://www.ruby-forum.com/u/martin_mercy2001)\
**Post date:** [July 19, 2008, 12:51pm UTC](https://www.ruby-forum.com/t/how-to-set-primary-key-in-rails-2-0-2/143487/7 "2008-07-19T12:51:39Z")

</div>

ur welcome. 🙂

On Sat, Jul 19, 2008 at 4:17 PM, dare ruby  
[removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)
