# Table without primary key

**URL:** <https://www.ruby-forum.com/t/table-without-primary-key/85425>\
**Category:** Rails\
**Created:** [February 13, 2007, 12:51pm UTC](https://www.ruby-forum.com/t/table-without-primary-key/85425 "2007-02-13T12:51:00Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![Step](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/f1d935/32.png) [@Step](https://www.ruby-forum.com/u/Step)\
**Post date:** [February 13, 2007, 12:51pm UTC](https://www.ruby-forum.com/t/table-without-primary-key/85425/1 "2007-02-13T12:51:00Z")

</div>

Hi all.  
I have table without in my DB.  
Rails try to use non-existent sequence and try to write value into  
non-existent primary key. And i have DB error.  
How to use model with such table?  
I try  
set\_sequence\_name nil  
set\_primary\_key nil  
and  
set\_sequence\_name “”  
set\_primary\_key “”

- not works.  
Help me please.  
Bye.

---

<div class="post-metadata">

**Author:** ![Step](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/f1d935/32.png) [@Step](https://www.ruby-forum.com/u/Step)\
**Post date:** [February 13, 2007, 1:03pm UTC](https://www.ruby-forum.com/t/table-without-primary-key/85425/2 "2007-02-13T13:03:49Z")

</div>

Hi,

Why don’t you just add a primary key?  
If you don’t have a primary key, how do you find entries in the  
database?

Jens

---

<div class="post-metadata">

**Author:** ![Step](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/f1d935/32.png) [@Step](https://www.ruby-forum.com/u/Step)\
**Post date:** [February 13, 2007, 1:18pm UTC](https://www.ruby-forum.com/t/table-without-primary-key/85425/3 "2007-02-13T13:18:01Z")

</div>

> Why don’t you just add a primary key?

I can not modify DB. I did not create DB. I use it only.

> If you don’t have a primary key, how do you find entries in the  
> database?  
> I use SQL 🙂  
> You can create table without PK and you will be able to get data 🙂

---

<div class="post-metadata">

**Author:** ![Step](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/f1d935/32.png) [@Step](https://www.ruby-forum.com/u/Step)\
**Post date:** [February 13, 2007, 1:37pm UTC](https://www.ruby-forum.com/t/table-without-primary-key/85425/4 "2007-02-13T13:37:52Z")

</div>

> Why don’t you just add a primary key?  
> I did not create DB. I can’t modify it, only use.  
> If you don’t have a primary key, how do you find entries in the database?  
> I use SQL 🙂

---

<div class="post-metadata">

**Author:** ![Step](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/f1d935/32.png) [@Step](https://www.ruby-forum.com/u/Step)\
**Post date:** [February 13, 2007, 1:38pm UTC](https://www.ruby-forum.com/t/table-without-primary-key/85425/5 "2007-02-13T13:38:52Z")

</div>

On Feb 13, 2007, at 7:18 AM, Step wrote:

> > Why don’t you just add a primary key?
> 
> I can not modify DB. I did not create DB. I use it only.

Since I don’t know the answer, I’ll ask Step’s question another way:  
why not ask the DBA to add a primary key?

> > If you don’t have a primary key, how do you find entries in the  
> > database?  
> > I use SQL 🙂  
> > You can create table without PK and you will be able to get data 🙂

Of course. I think what Step wanted to know was what criteria do you  
use to find unique rows?

Craig

---

<div class="post-metadata">

**Author:** ![Step](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/f1d935/32.png) [@Step](https://www.ruby-forum.com/u/Step)\
**Post date:** [February 13, 2007, 1:39pm UTC](https://www.ruby-forum.com/t/table-without-primary-key/85425/6 "2007-02-13T13:39:52Z")

</div>

Oops. In my earlier reply, I meant to reference Jens’ questions  
instead of Step’s. I’m sorry for any confusion.

Craig

---

<div class="post-metadata">

**Author:** ![Step](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/f1d935/32.png) [@Step](https://www.ruby-forum.com/u/Step)\
**Post date:** [February 13, 2007, 3:29pm UTC](https://www.ruby-forum.com/t/table-without-primary-key/85425/7 "2007-02-13T15:29:15Z")

</div>

Win with  
set\_primary\_keys - tool for composite primary key

gem --install composite\_primary\_keys

---

<div class="post-metadata">

**Author:** ![Step](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/f1d935/32.png) [@Step](https://www.ruby-forum.com/u/Step)\
**Post date:** [February 14, 2007, 9:46am UTC](https://www.ruby-forum.com/t/table-without-primary-key/85425/8 "2007-02-14T09:46:56Z")

</div>

> Did you or a DBA create a compound one instead of a simple one?  
> Or, did you have a compound one all along?  
> No.  
> Table had not any PK.  
> Table has not any PK now.  
> I tried use set\_primary\_key :column\_name but it didn’t work. When i  
> tried to save row i had got error. I don’t know why.  
> I tried use this gem and use set\_primary\_keys :column\_name - it  
> works.

---

<div class="post-metadata">

**Author:** ![Step](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/f1d935/32.png) [@Step](https://www.ruby-forum.com/u/Step)\
**Post date:** [February 13, 2007, 3:42pm UTC](https://www.ruby-forum.com/t/table-without-primary-key/85425/9 "2007-02-13T15:42:06Z")

</div>

On Feb 13, 2007, at 9:29 AM, Step wrote:

> Win with  
> set\_primary\_keys - tool for composite primary key
> 
> gem --install composite\_primary\_keys

I agree that this is a great gem, but you wrote that your table  
didn’t have a primary key. Did you or a DBA create a compound one  
instead of a simple one? Or, did you have a compound one all along?

Craig
