Tables are not creating with hook_schema
&lt;?php
/**
 * @file
 * Contains install and update functions for Views.
 */

/**
 * Implements hook_install().
 */
function mid_components_install(){

}

/**
 * Implements hook_schema().
 *
 */
function mid_components_schema(){
    $schemas = array();
    $schemas['mid_components'] = array(
        'description' =&gt; 'The mid_components data.',
        'fields' =&gt; array(
            'cid' =&gt; array(
                'description' =&gt; 'Primary key',
                'type' =&gt; 'serial',
                'unsigned' =&gt; TRUE,
                'not null' =&gt; TRUE,
            ),
            'title' =&gt; array(
                'description' =&gt; 'Human readable name of the component.',
                'type' =&gt; 'varchar',
                'length' =&gt; 255,
                'not null' =&gt; TRUE,
            ),
            'machine_name' =&gt; array(
                'description' =&gt; 'Unique machine name of the component',
                'type' =&gt; 'varchar',
                'length' =&gt; 255,
                'not null' =&gt; TRUE,
            ),
            'description' =&gt; array(
                'description' =&gt; 'Description of the component.',
                'type' =&gt; 'varchar',
                'length' =&gt; 255,
                'not null' =&gt; FALSE,
            ),
            'options' =&gt; array(
                'description' =&gt; 'A serialized array of options for this display; it contains options that are generally only pertinent to that component.',
                'type' =&gt; 'blob',
                'size' =&gt; 'big',
                'not null' =&gt; FALSE,
            ),
            'status' =&gt; array(
                'description' =&gt; 'Status of the component',
                'type' =&gt; 'int',
                'not null' =&gt; TRUE,
                'default' =&gt; 0,
                'unsigned' =&gt; TRUE,
            ),
            'created' =&gt; array(
                'type' =&gt; 'int',
                'description' =&gt; 'The Unix timestamp when the item is created',
                'not null' =&gt; TRUE,
                'default' =&gt; 0,
            ),
            'changed' =&gt; array(
                'type' =&gt; 'int',
                'description' =&gt; 'The Unix timestamp when the item is modified.',
                'not null' =&gt; TRUE,
                'default' =&gt; 0,
            ),
        ),
        'primary key' =&gt; array('cid'),
        'unique key' =&gt; array('machine_name' =&gt; array('machine_name')),
    );
    return $schemas;
}

/**
 * Implements hook_uninstall().
 */
function mid_components_uninstall(){

}


Follow this method. And Make sure after doing any chnagings to your .install file, uninstall your module and reinstall it again.