繁体   English   中英

Laravel 5.5迁移错误

[英]Laravel 5.5 migration error

我正在尝试迁移我的postgresql表,但是在启动命令php artisan migrate它会返回以下错误:

SQLSTATE [08P01]:<>:7错误:绑定消息提供1个参数,但准备好的语句“ pdo_stmt_00000003”需要2个参数(SQL:从information_schema.tables中选择*,其中table_schema = migrations,table_name =?)

我的迁移之一:

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

class CreateSchedulesTable extends Migration {

/**
 * Run the migrations.
 *
 * @return void
 */
public function up()
{
    Schema::create('schedules', function(Blueprint $table)
    {
        $table->increments('id');
        $table->string('schedule_name')->unique();
        $table->integer('parent_id')->unsigned()->nullable();
        $table->integer('launch_sequence_id')->unsigned();
        $table->string('day_of_week', 10)->nullable();
        $table->string('command_type', 50);
        $table->integer('hours')->unsigned()->nullable();
        $table->integer('minutes')->unsigned()->nullable();
        $table->integer('dd')->unsigned()->nullable();
        $table->integer('mm')->unsigned()->nullable();
        $table->integer('yyyy')->unsigned()->nullable();
        $table->boolean('enabled')->default(1);
        $table->boolean('ascending')->default(0);
        $table->dateTime('last_execution')->nullable();
        $table->dateTime('last_success')->nullable();
        $table->integer('retry')->default(0);

        $table->timestamps();
        $table->softDeletes();
    });

    DB::statement('ALTER TABLE schedules ADD CONSTRAINT day_of_week_check CHECK ((day_of_week)::text = ANY (ARRAY[(\'all\'::character varying)::text, (\'monday\'::character varying)::text, (\'tuesday\'::character varying)::text, (\'wednesday\'::character varying)::text, (\'thursday\'::character varying)::text, (\'friday\'::character varying)::text, (\'saturday\'::character varying)::text, (\'sunday\'::character varying)::text]))');
}


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

}

而我的数据库配置:

'default' => env('DB_CONNECTION', 'pgsql'),
'connections' => [

    'pgsql' => [
        'driver' => 'pgsql',
        'host' => env('DB_HOST', '127.0.0.1'),
        'port' => env('DB_PORT', '5432'),
        'database' => env('DB_DATABASE', 'forge'),
        'username' => env('DB_USERNAME', 'forge'),
        'password' => env('DB_PASSWORD', ''),
        'charset' => 'utf8',
        'prefix' => '',
        'schema' =>  env('DB_SCHEMA', 'public'),
        //'sslmode' => 'prefer',
    ]
],

我的.env

DB_CONNECTION=pgsql
DB_HOST=127.0.0.1
DB_PORT=5432
DB_DATABASE=livion
DB_USERNAME=livion
DB_PASSWORD=secret
DB_SCHEMA=public

我试图对其进行跟踪,似乎它没有为函数repositoryExists使用正确的语法,它使用了默认的语法,而没有发送schema参数。

通过模型或存储库执行的其他查询工作正常,我仅对于迁移命令遇到此错误。

有解决这个问题的建议吗?

我找出问题所在。 我将项目从laravel 5.3迁移到5.5,旧项目使用了模块Aejnsn \\ Postgresify。

这导致我的迁移问题。

删除它,然后所有工作再次。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM