Dudas
¿Estás usando ActiveRecord?
¿Hay alguna razón por la que no tengas una llave primaria en esa tabla?
No entendí bien, ¿esta aplicación la hiciste tu o la estas manteniendo?
Aclaraciones.
Sinatra ni Ruby se conectan directamente a la base de datos, eso lo hace una gema para base de datos, en este caso entiendo que estas usando ActiveRecord (creo), asi que todo lo de base de datos lo maneja directamente esa librería.
El primary key se utiliza para identificar un registro de otro, tiene que ser único y se recomienda que tenga un índice en la base de datos. Por defecto ActiveRecord busca un campo llamado 'id', pero le puedes configurar que sea otro.
Como consejo te recomiendo que revises tu dicción, ya que no entendí bien tu mensaje