current_timestamp in date field
You can specify a driver-specific column type for MySQL using the mysql_type attribute:

function MYMODULE_schema (){
  $schema['table_name'] = array(
    'fields' =&gt; array(
      'created' =&gt; array(
        'mysql_type' =&gt; 'timestamp',
        'not null' =&gt; TRUE
      )
    )
  );

  return $schema;
}


Then, on enabling your module, you can simply modify the column to add the default/on-update behaviour:

function MYMODULE_enable() {
  db_query('
    ALTER TABLE {table_name} 
    MODIFY created TIMESTAMP NOT NULL 
    DEFAULT CURRENT_TIMESTAMP 
    ON UPDATE CURRENT_TIMESTAMP'
  );
}


I've just tested that on Drupal 7 and it works a treat.

NOTE: If you don't want the timestamp to update every time the record is updated then just remove the ON UPDATE CURRENT_TIMESTAMP part of the query.