当前位置: 首页 > 知识库问答 >
问题:

“SQLSTATE[23000]:完整性约束冲突:1062个重复条目

陶鸿畴
2023-03-14

我提交一个表单与AJAX和在网络我得到这个错误。

"SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'k@t.com' for key 'users_email_unique' (SQL: insert into `users` (`name`, `email`, `active`, `verify`, `user_type`, `password`) values (K, k@t.com, 2, , 3, $2y$10$FiwHZB1VKWo0skjrCn/16epQq5aqfwdQ055PZLebaK4XEyQFNuDai))"

我正在使用Laravel5.6和迁移。这是此表的迁移。

    Schema::create('users', function (Blueprint $table) {
        $table->increments('id');
        $table->string('name');
        $table->string('email')->unique();
        $table->string('password');
        $table->tinyInteger('user_type');
        $table->tinyInteger('active');
        $table->rememberToken();
        $table->timestamps();
        $table->index('user_type');
        $table->index('active');
    });

这是我的控制器的功能

public function teacherApply(Request $request)
{

    if (Input::get()) {

        $data = Input::get();

        $email_check = User::where(['email' => $data['email'], 'active' => 1])->first();

        if (!empty($email_check))
        {
            return ["status" => 3, "message" => "Email already registered"];
        }
        else
        {

           $required_points = [

               'name'                   =>     'required',

               'firstName'              =>     'required',

               'lastName'               =>     'required',

               'email'                  =>     'required',

               'contact'                =>     'required',

               'password'               =>     'required',

               'degree'                 =>     'required',

               'field'                  =>     'required',

               'about'                  =>     'required'

           ];

        $validator = Validator::make($request->all(), $required_points);

        if ($validator->fails()) {

            return response()->json(['errors'=>$validator->errors(),'status' => 2]);

        }

        $name = $data['name'];

        $file_name    =    'Empty';

        $file         =    Input::file('image');

        if(!empty($file))
        {

        $destination   =    base_path('public/pmc_assets/teacher-samples');

        $file_name     =    upload_file($file, $destination);

        }

        $userID = User::insertGetId([

            'name'          =>     $name,

            'email'         =>     $data['email'],

            'active'        =>     2,

            'verify'        =>     '',

            'user_type'     =>     config('constant.teacher'), // Teacher

            'password'      =>     bcrypt($data['password']),
        ]);

        TeacherRequests::insert([

            'name'          =>     $data['firstName']." ".$data['lastName'],

            'phone'         =>     $data['contact'],

            'skype'         =>     $data['skype'],

            'user_id'       =>     $userID,

            'degree_type'   =>     $data['degree'],

            'degree_field'  =>     $data['field'],

            'about'         =>     $data['about'],

            'sample'        =>     $file_name,

            'resume'        =>     '',

            'active'        =>     2,

            'approved'      =>     0,

            'created_at'    =>     Carbon::now()

        ]);

        //send_to_flock_channel($name,"Manual","Teacher");

        return ["status"=> 1, "user_id" => $userID, "email" => $data['email']];

    }

    }

    return view('teacher.apply_teacher');
}

我的文件上传成功,数据也被插入到数据库中,但我仍然收到这个错误。这不影响我,但想解决它吗?

共有1个答案

国言
2023-03-14

在迁移文件$table中-

您需要处理验证,如'email'=

或者

将查询更改为$email\u check=User::where(['email'=

 类似资料:
  • 我的迁移: 但会导致查询异常:( SQLSTATE[23000]:完整性约束冲突:密钥“users\u identifier\u unique”的1062重复条目“76561198364059468”

  • 我是拉雷维尔的新手,这是我在拉雷维尔的第一个项目。像往常一样,首先我正在开发一个完整的用户身份验证系统。我可以注册一个用户,可以发送用户验证电子邮件,点击该链接后,我可以激活一个新的用户帐户,可以登录和注销。但在那之后,每当我尝试注册另一个新用户并单击验证链接后,我都会遇到一个异常, 现在这是我的路线。php, 这是我的账户管理员 这是我的创建用户迁移文件 这是我的用户。php 现在有什么问题?

  • 这是用户迁移: 更新:这是我的插入函数: 当我的数据库中有一个melli(如1234567890)并且我尝试再次写入1234567890时,就会发生此错误,因为melli字段是唯一的。

  • 我有一个laravel 5项目,我想使用软删除方法,但每次删除后,我都会收到以下sql错误消息: 我试图关闭时间戳,但它没有停止,我用谷歌搜索它,我找不到任何解决方案。 迁移: 型号: 谢谢你的帮助。

  • 我使用一个自定义的API请求到我的数据库来生成一个新的条目。 我的表格结构是这样的: 表结构 我将Incident_Type设置为唯一,因为这是我的系统的要求。当我向系统发布新条目时: 第一次很好。 第二次: 当我使用不同的事件id时,我得到错误: 为什么发送请求使用完全相同的条目,即使我更改了数据?我该怎么解决这个问题?

  • 我下面Laravel-8教程从零开始。现在我在这个教程https://laracasts.com/series/laravel-8-from-scratch/episodes/30[][1]。但是当我跟随的时候 Illumb\Database\QueryException,消息为“SQLSTATE[23000]:完整性约束冲突:1062个重复条目“omnis”,用于键“categories\u n