SQLSTATE [42S02]: Базовая таблица или представление не найдено: 1146 Таблица «blog.posts» не существует - PullRequest
0 голосов
/ 08 апреля 2019

[Заголовок] [1] ## Laravel 5.8

Это блог с Laravel

Я настраиваю базу данных и создаю таблицу при запуске программы, программыимеет предупреждение:

SQLSTATE [42S02]: Базовая таблица или представление не найдены: 1146 Таблица 'blog.posts' не существует (SQL: вставить в `posts` (` title`, `content`,`updated_at`, `creation_at`) значения (asdasdasdas, этот пост в блоге поможет вам правильно разобраться с laravel, 2019-04-08 14:54:16, 2019-04-08 14:54:16))

config / database.php

    'mysql' => [
        'driver' => 'mysql',
        'host' => env('DB_HOST', '127.0.0.1'),
        'port' => env('DB_PORT', '3306'),
        'database' => env('DB_DATABASE', 'forge'),
        'username' => env('DB_USERNAME', 'forge'),
        'password' => env('DB_PASSWORD', ''),
        'unix_socket' => env('DB_SOCKET', ''),
        'charset' => 'utf8mb4',
        'collation' => 'utf8mb4_unicode_ci',
        'prefix' => '',
        'prefix_indexes' => true,
        'strict' => true,
        'engine' => null,
        'options' => extension_loaded('pdo_mysql') ? array_filter([
            PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'),
        ]) : [],
    ];

2019_04_01_135051_create_posts_table

public function up()
{
    Schema::create('posts', function (Blueprint $table) {
        $table->increments('id');
        $table->timestamps();
        $table->string('title');
        $table->text('content');
    });
}

2019_04_01_134543_create_likes_table

 public function up()
{
    Schema::create('likes', function (Blueprint $table) {
        $table->increments('id');
        $table->timestamps();
    });
}

2019_04_01_134543_table * в этой строке: 910 * * * * *класс Post:

 protected $fillable = ['title', 'content'];

эта строка находится в postControoler.php

  public function postAdminCreate(Store $session, Request $request)
{
    $this->validate($request, [
        'title' => 'required|min:5',
        'content' => 'required|min:10'
    ]);
    $post = new Post([
        'title' => $request->input('title'),
        'content' => $request->input('content')
    ]);
    $post->save();

    return redirect()->route('admin.index')->with('info', 'Post created, Title is: ' . $request->input('title'));
}

2014_10_12_000000_create_users_table

<?php

use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;

class CreateUsersTable extends Migration
{
/**
 * Run the migrations.
 *
 * @return void
 */
public function up()
{
    Schema::create('users', function (Blueprint $table) {
        $table->bigIncrements('id');
        $table->string('title');
        $table->string('content');
        $table->string('email')->unique();
        $table->timestamp('email_verified_at')->nullable();
        $table->string('password');
        $table->rememberToken();
        $table->timestamps();
    });
}

/**
 * Reverse the migrations.
 *
 * @return void
 */
public function down()
{
    Schema::dropIfExists('users');
}
}

это post.blade.php в папке блога

@extends('layouts.master')

@section('content')
<div class="row">
    <div class="col-md-12">
        <p class="quote">{{ $post['title']  }}</p>
    </div>
</div>
<div class="row">
    <div class="col-md-12">
        <p>{{ $post['content'] }}</p>
    </div>
</div>
@endsection

Сначала я запускаю

php artisan migrate

, когда cmd говорит:

 Migrating: 2014_10_12_000000_create_users_table

    Illuminate\Database\QueryException  : SQLSTATE[42S01]: Base table or view 
    already exists: 1050 Table 'users' already exists (SQL: create table `users` 
    (`id` bigint unsigned not null auto_increment primary key, `title` 
    varchar(255) not null, `content` varchar(255) not null, `email` varchar(255) 
    not null, `email_verified_at` timestamp null, `password` varchar(255) not 
    null, `remember_token` varchar(100) null, `created_at` timestamp null, `updated_at` timestamp null) default character set utf8mb4 collate 'utf8mb4_unicode_ci')

  at C:\xampp\htdocs\getting-started\vendor\laravel\framework\src\Illuminate\Database\Connection.php:664
    660|         // If an exception occurs when attempting to run a query, we'll format the error
    661|         // message to include the bindings with SQL, which will make this exception a
    662|         // lot more helpful to the developer instead of just the database's errors.
    663|         catch (Exception $e) {
  > 664|             throw new QueryException(
    665|                 $query, $this->prepareBindings($bindings), $e
    666|             );
    667|         }
    668|

  Exception trace:

  1   PDOException::("SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'users' already exists")
      C:\xampp\htdocs\getting-started\vendor\laravel\framework\src\Illuminate\Database\Connection.php:458

  2   PDOStatement::execute()
      C:\xampp\htdocs\getting-started\vendor\laravel\framework\src\Illuminate\Database\Connection.php:458

Когда я создаюотправьте сообщение и нажмите «отправить», скажите предупреждение

Как я могу это исправить?

SQLSTATE [42S02]: базовая таблица или представление не найдены: 1146 Таблица «blog.posts» не существует (SQL: вставьте в значения `posts` (` title`, `content`,` updated_at`, `creation_at`) (asdasdasdas, этот пост в блоге поможет вам правильно разобраться с laravel, 2019-04-08 14:54:16,2019-04-08 14:54:16)) yellow "> SQLSTATE [42S02]: базовая таблица или представление не найдены: 1146 Таблица« blog.posts »не существует (SQL: вставить в`Значения posts` (`title`,` content`, `updated_at`,` create_at`) (asdasdasdas, Этот пост в блоге поможет вам в правильном направлении с laravel, 2019-04-08 14:54:16, 2019-04-08 14:54:16))

1 Ответ

0 голосов
/ 08 апреля 2019

Вы можете сделать эти шаги:

  1. Уберите всю таблицу с вашего database.
  2. запустить php artisan migrate снова.
  3. Проверка posts таблица создана в database

А теперь попробуй.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...