Yes, you do need to have a unique Primary Key Column in your database to be able to drill down to a specific record.
This is not so much a limitation imposed by DataAssist.
the job of a primary key column is to be a unique identifier for the record to be used by the database for indexing purposes.
With out a primary key column, you will have to use another column to uniquely identify the record for looking up the details, this can become problematic though. Since the database will not be responsible for making sure the value in that column is unique, you could insert duplicate keys. In the case of a detail page, only the first record would be displayed, causing the duplicate top become orphaned.