Streetlamp
Streetlamp

Reputation: 1556

Artisan, creating tables in database

I am trying to create mysql tables in Laravel 5. I created a file in /project/database/migrations called users.php:

[...]
public function up()
{
    Schema::create('users', function(Blueprint $table)
    {
        $table->increments('id');
        $table->string('username');
        $table->string('fullname');
        $table->int('number');
        $table->string('email')->unique();
        $table->string('password', 60);
        $table->rememberToken();
        $table->timestamps();
    });
}
[...]

I then tried running these commands in the project-folder:

$ php artisan migrate
$ php artisan migrate:install
$ php artisan migrate --pretend

None of them return any output and no tables are created. The database to be populated exists.

Upvotes: 57

Views: 283038

Answers (5)

alex jone
alex jone

Reputation: 19

First You have to create a migration file by the Following Command!

php artisan make:migration create_users_table --create=users

Now You can add your required fields in function up

    public function up()
{
    Schema::create('users', function(Blueprint $table)
    {
        $table->increments('id');
        $table->string('username');
        $table->string('fullname');
        $table->int('number');
        $table->string('email')->unique();
        $table->string('password', 60);
        $table->rememberToken();
        $table->timestamps();
    });
}

In Last you Just have to run this command to migrate your table in database

php artisan migrate

Upvotes: 1

Abduhafiz
Abduhafiz

Reputation: 3404

Create migration and run only created migration.

php artisan make:migration create_users_table --create=users

php artisan migrate --path=/database/migrations/0000_00_00_000000_create_users_table.php

Upvotes: 0

Rajesh kumar
Rajesh kumar

Reputation: 39

in laravel 5 first we need to create migration and then run the migration

Step 1.

php artisan make:migration create_users_table --create=users

Step 2.

php artisan migrate

Upvotes: 2

Abhishek Sojitra
Abhishek Sojitra

Reputation: 23

In order to give a value in the table, we need to give a command:

php artisan make:migration create_users_table

and after then this command line

php artisan migrate

......

Upvotes: -3

patricus
patricus

Reputation: 62368

Migration files must match the pattern *_*.php, or else they won't be found. Since users.php does not match this pattern (it has no underscore), this file will not be found by the migrator.

Ideally, you should be creating your migration files using artisan:

php artisan make:migration create_users_table

This will create the file with the appropriate name, which you can then edit to flesh out your migration. The name will also include the timestamp, to help the migrator determine the order of migrations.

You can also use the --create or --table switches to add a little bit more boilerplate to help get you started:

php artisan make:migration create_users_table --create=users

The documentation on migrations can be found here.

Upvotes: 111

Related Questions