which design better when use foreign key instead of a string to store a list of id
As ypercube and marc_s pointed out, it's best to have a 2-column "mapping" table to store which questions are used by which general exams.

This approach provides the following benefits:


Foreign Keys can then be used to ensure data integrity
Queries are much easier to write (eg: find all general exams that use question 17)
Extending the database schema at a later date (to support new features) will be much easier
The schema will be easier to understand by new/other developers/DBAs since it confirms to best practice