I needed to set `change tracking` in `sql server 2008` table to true but it gave an error that the table has to have a `primary key`

1. Is there a way to enable change tracking without setting a `primary key` in my table
2. Is it a good programming practice not to set `primary keys`? I am creating a system but i don't want to set them on `SQL` tables