在laravel中使用迁移创建表

时间:2014-11-17 08:10:44

标签: mysql laravel-4

我是laravel的新手。我是创建表"用户"使用migration.But当我想要创建第二个" timelog"使用不同的迁移,它会提供错误消息' table not found'。然后我也删除所有迁移表和数据库表。我再次尝试创建表"用户"使用migration.But lavelvel在终端中给出错误消息。错误信息如下:
 [照亮\数据库\ QueryException]
  SQLSTATE [42S02]:未找到基表或视图:1146表' hrm.users'不存在(SQL:alter table users add id int u
  nsigned not null auto_increment主键,添加username varchar(255)not null,添加email varchar(255)not null,添加c
ontactnumber
varchar(255)not null,添加{{1 } varchar(255)not null,添加password时间戳默认值0不为空,ad
  d created_at时间戳默认值0不为空)

[PDOException]
  SQLSTATE [42S02]:未找到基表或视图:1146表' hrm.users'不存在

我如何解决这个问题。

1 个答案:

答案 0 :(得分:0)

检查您的app / database / migrations文件夹,如果您迁移,Laravel将创建其中列出的所有尚未在迁移表中的表。

sql查询建议您尝试更改 - 而不是创建 - 表,因此请查看迁移类并确保它们看起来像这样:

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

    class CreateSomething extends Migration {

        /**
         * Run the migrations.
         *
         * @return void
         */
        public function up()
        {
            Schema::create('something', function($table) {
                $table->increments('id');
                ...
            });
        }

        /**
         * Reverse the migrations.
         *
         * @return void
         */
        public function down()
        {
            //drop the table
        }

    }