반응형
내 목적은 값이있는 경우 업데이트하고 그렇지 않으면 양식을 제출 한 후 데이터베이스 테이블에 새 행을 삽입 하는 것입니다.
문제는 여기에있는 함수가 db 테이블에 새 열을 업데이트하는 대신 새 열을 추가 한다는 것입니다.
내 기능은 다음과 같습니다.
MyModel::updateOrCreate(array(
'myField' => 'myValue',
))
->where('myAutoIncrementalField', '=', '5')
->where('myPrimaryKey', '=', '8');
내 데이터베이스 테이블은 다음과 같습니다.
1. myPrimaryKey (not auto incremental and is fillable on model.)
2. AutoIncrement 필드 (자동 증가이며 모델에서 채울 수 없습니다.)
미리 감사드립니다.
해결 방법
이 방법을 사용하는 방법은 다음과 같습니다.
Model::updateOrCreate(
['primary_key' => 8],
['field' => 'value', 'another_field' => 'another value']
);
첫 번째 매개 변수는 고유 한 필드 배열 또는 귀하의 경우 기본 키를 전달합니다. 고유하지 않은 필드는 PK와 함께 어떤 것을 전달하는 것처럼 여기에서 분명히 의미가 없습니다.
두 번째 매개 변수는 업데이트 / 작성해야하지만 고유 / pk 검색에서 무시되는 값의 배열입니다.
참조 페이지 https://stackoverflow.com/questions/27479339
반응형
'MySql' 카테고리의 다른 글
MySQL Apache 및 MySQL이 실행 중이지만 "http : // localhost / phpmyadmin /"에 "이 웹 페이지를 사용할 수 없음"이 표시됩니다. (0) | 2020.11.26 |
---|---|
MySQL 데이터베이스에 개체를 저장하고 싶습니다. (0) | 2020.11.26 |
MySQL PHP에서 동시에 게시하고 가져옵니다. (0) | 2020.11.26 |
MySQL mysql.sock을 찾을 수 없습니다. 어디서 찾을 수 있습니까? (0) | 2020.11.26 |
MySQL PHP 날짜에서 X 일을 뺀 날짜 (0) | 2020.11.26 |
댓글