Drupal 7 set default value from database in hook_form
Basically, you have to add an indicator with edit question link i.e query string to load the selected question from database and pass the default value to the form.


  A query string is the part of a uniform resource locator (URL) that contains data to be passed to web applications.


"Click here to edit" link may look like (clean URL enabled): 

http://www.your-domain.com/item_view/question/44 

or

http://www.your-domain.com/question/44/edit

44 in both cases represent question id.

Then, take question id from the url and pass it to a mysql query to retrieve question title and assign it to #default_value  

Example as follow:

function question_form() {

  $question_id = 0;

  // assuming url: www.your-domain.com/item_view/question/44
  if (arg(1) == 'question') {
    $question_id = arg(2);
  }

  // retrieve question title by question id
  $query = db_select('questions', 'q')
    -&gt;fields('q', array('question_title'))
    -&gt;condition('q.question_id', $question_id);
  $result = $query-&gt;execute()-&gt;fetchAssoc();


  $form['question'] = array(
    '#title' =&gt; t('Question'),
    '#type' =&gt; 'textfield',
    '#default_value' =&gt; ($result &amp;&amp; isset($result['question_title']))? $result['question_title'] : '';
  );
}