title: MySQL Error - Field 'id' doesn't have a default value
body: <p>I am new to this SQL and I think I do not understand it fully yet. I am trying to install a script which does the following to insert create tables in a database</p>
  
  <p>The error I get is:</p>
  
  <blockquote>
    <p>Error!<br>
    Mysql entry failed Field 'fb_app_id' doesn't have a default value.</p>
  </blockquote>
  
  <p>So I searched in the files and found this piece of code which is creating the table.</p>
  
  <pre><code>CREATE TABLE IF NOT EXISTS `global_config` (
    `site_name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL,
    `site_url` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL,
    `meta_description` text COLLATE utf8mb4_unicode_ci NOT NULL,
    `meta_keywords` text COLLATE utf8mb4_unicode_ci NOT NULL,
    `site_theme` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL,
    `fb_app_id` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL,
    `fb_app_secret` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL,
    `fb_app_token` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL,
    `fb_scope` varchar(500) COLLATE utf8mb4_unicode_ci NOT NULL,
    `tw_app_id` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL,
    `tw_app_secret` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL,
    `yt_client_id` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL,
    `yt_client_secret` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL,
    `yt_dev_token` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL,
   `fb_enabled` tinyint(1) NOT NULL,
    `tw_enabled` tinyint(1) NOT NULL,
    `yt_enabled` tinyint(1) NOT NULL,
    `ffmpeg` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL,
    `seo_url` tinyint(1) NOT NULL,
    `media_plugin_enabled` tinyint(1) NOT NULL,
    `downloader_plugin_enabled` tinyint(1) NOT NULL,
    `image_watermarking_enabled` tinyint(1) NOT NULL,
    `video_watermarking_enabled` tinyint(1) NOT NULL,
    `image_editor_enabled` tinyint(1) NOT NULL,
    `video_editor_enabled` tinyint(1) NOT NULL,
    `disable_all_crons` tinyint(1) NOT NULL,
    `disable_poster_cron` tinyint(1) NOT NULL,
    `disable_hide_delete_cron` tinyint(1) NOT NULL,
    `disable_insights_cron` tinyint(1) NOT NULL,
    `disable_videoeditor_bumping_cron` tinyint(1) NOT NULL,
    `enable_signup` tinyint(1) NOT NULL,
    `enable_maintenance_mode` tinyint(1) NOT NULL,
    `maintenance_message` text COLLATE utf8mb4_unicode_ci NOT NULL,
    `paypal_email` varchar(500) COLLATE utf8mb4_unicode_ci NOT NULL,
    `admin_email` varchar(500) COLLATE utf8mb4_unicode_ci NOT NULL,
    UNIQUE KEY `site_name` (`site_name`)
  ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
  </code></pre>
  
  <p>What exactly is causing the issue now and how can I solve it?</p>
  
  <p>All help is appreciated. </p>
  
  <p>EDIT: Index.php</p>
  
  <pre><code>$(document).on('click', '.app_setup', function(){
  
  var elem = $(this);
  var fb_app_id = $('#fb_app_id').val();
  var fb_app_secret = $('#fb_app_secret').val();
  var tw_app_id = $('#tw_app_id').val();
  var tw_app_secret = $('#tw_app_secret').val();
  var yt_client_id = $('#yt_client_id').val();
  var yt_client_secret = $('#yt_client_secret').val();
  var yt_dev_key = $('#yt_dev_key').val();
  
  elem.hide();
  notify('wait', 'Setting up...');
  $.post('ajax.php', {
      'fb_app_id': fb_app_id,
      'fb_app_secret': fb_app_secret,
      'tw_app_id': tw_app_id,
      'tw_app_secret': tw_app_secret,
      'yt_client_id': yt_client_id,
      'yt_client_secret' : yt_client_secret,
      'yt_dev_key': yt_dev_key,
      'app_setup': 1
  }, function(response){
      var data = $.parseJSON(response);
      if(data.error != ''){
          elem.show();
          return notify('error', data.error);
      }
      else{ 
          notify('success', 'App setup successful');
          $('.step3').slideUp();
          $('.step4').slideDown();
      }
  });
  });
  </code></pre>