title: I have filled every field but still showing SQLSTATE[HY000] in user table in laravel why?
body: <p>I have filled every required field in users table but still getting that error:</p>
  
  <pre><code>SQLSTATE[HY000]: General error: 1364 Field 'profession' doesn't have a default value (SQL: insert into `users` (`name`, `email`, `password`, `updated_at`, `created_at`) values (Tushar Saha, test@email.com, $2y$10$LDoHlFMH6irkn4riSaAA6evH.BxBw77HBKtluIAAn/gE2R9OmXfKy, 2019-02-08 13:13:25, 2019-02-08 13:13:25))
  </code></pre>
  
  <p>Arguments:</p>
  
  <pre><code>"SQLSTATE[HY000]: General error: 1364 Field 'profession' doesn't have a default value (SQL: insert into `users` (`name`, `email`, `password`, `updated_at`, `created_at`) values (Tushar Saha, test@email.com, $2y$10$LDoHlFMH6irkn4riSaAA6evH.BxBw77HBKtluIAAn/gE2R9OmXfKy, 2019-02-08 13:13:25, 2019-02-08 13:13:25))
  </code></pre>
  
  <p>I have double checked the <strong><em>profession</em></strong> spelling<br> </p>
  
  <ol>
  <li>In the migration folder</li>
  <li>in view page</li>
  <li>in register controller</li>
  </ol>
  
  <p>I also check the posted values in network section:</p>
  
  <pre><code>_token  
  "D9UB2NCdncIsorcsqmJGiy2QJZq0D5YSirnbBz5W"
  name    "Tushar Saha"
  
  profession  "Student"
  
  email   "test@email.com"
  
  password    "111111"
  
  password_confirmation   "111111"
  </code></pre>
  
  <p>RegisterController.php</p>
  
  <pre><code>protected function validator(array $data)
  {
      return Validator::make($data, [
          'name' =&gt; ['required', 'string', 'max:255'],
          'profession' =&gt; ['required', 'string', 'max:255'],
          'email' =&gt; ['required', 'string', 'email', 'max:255', 'unique:users'],
          'password' =&gt; ['required', 'string', 'min:6', 'confirmed'],
      ]);
  }
  </code></pre>
  
  <p>In migration:</p>
  
  <pre><code>public function up()
  {
      Schema::create('users', function (Blueprint $table) {
          $table-&gt;increments('id');
          $table-&gt;string('name');
          $table-&gt;string('profession');
          $table-&gt;string('email')-&gt;unique();
          $table-&gt;timestamp('email_verified_at')-&gt;nullable();
          $table-&gt;string('password');
          $table-&gt;tinyInteger('role')-&gt;default('3');
          $table-&gt;rememberToken();
          $table-&gt;timestamps();
      });
  }
  </code></pre>
  
  <p>In view</p>
  
  <pre><code>&lt;div class="form-group row"&gt;
                              &lt;label for="profession" class="col-md-4 col-form-label text-md-right"&gt;{{ __('Profession') }}&lt;/label&gt;
  
                              &lt;div class="col-md-6"&gt;
  
                                  &lt;select name="profession" class="form-control{{ $errors-&gt;has('profession') ? ' is-invalid' : '' }}" value="{{ old('profession') }}" required autofocus&gt;
                                      &lt;option value=""&gt;Select One&lt;/option&gt;
                                      &lt;option value="Student"&gt;Student&lt;/option&gt;
                                      &lt;option value="Employed"&gt;Employed&lt;/option&gt;
                                      &lt;option value="Business Man"&gt;Business Man&lt;/option&gt;
                                  &lt;/select&gt;
  
                                  @if ($errors-&gt;has('profession'))
                                      &lt;span class="invalid-feedback" role="alert"&gt;
                                          &lt;strong&gt;{{ $errors-&gt;first('profession') }}&lt;/strong&gt;
                                      &lt;/span&gt;
                                  @endif
                              &lt;/div&gt;
                          &lt;/div&gt;
  </code></pre>
  
  <p>What am I missing?</p>