반응형
Larabel 마이그레이션에서 열을 null로 만들 수 없습니다.
테이블에서 특정 열을 만들기 위해 마이그레이션을 쓰고 있습니다.nullable
지금 당장.다운 기능은 물론 그 컬럼을 만들고 싶다.not nullable
스키마 빌더 문서를 뒤져봤지만 방법을 찾을 수가 없었어요
어떤 도움이라도 주시면 감사하겠습니다.
Laravel 5 이전에는 스키마 빌더를 사용하여 기존 테이블 열을 변경하는 Laravel 네이티브 방법이 없었습니다.여기에는 원시 쿼리를 사용해야 합니다.
단, Larabel 5부터는 다음 기능을 사용할 수 있습니다.
$table->string('foo')->nullable(false)->change();
위의 명령어를 실행하기 전에 dbal 의존관계가 필요합니다.
composer require doctrine/dbal
Larabel 5에서는 false를 전달함으로써 이를 되돌릴 수 있습니다.nullable
.
$table->string('foo')->nullable(false)->change();
첫 번째 실행:
composer require doctrine/dbal
그런 다음 테이블을 다음과 같이 변경하는 마이그레이션을 작성합니다.
php artisan make:migration fix_whatever_table_name_here
public function up()
{
Schema::table('table_name', function (Blueprint $table) {
$table->type('column')->nullable(false)->change();
});
}
# Optional:
# public function down()
# {
# Schema::table('table_name', function ($table) {
# $table->type('column')->nullable()->change();
# });
# }
->nullable() 없이 열을 다시 선언하고 ->change를 사용할 수 있습니다.
public function up()
{
Schema::table('table_name', function (Blueprint $table) {
$table->type('column')->nullable(false)->change();
});
}
public function down()
{
Schema::table('table_name', function ($table) {
$table->type('column')->nullable()->change();
});
}
larabel 8 에서는, 「->nullable()」이라고 하는 입력만 하면 됩니다.
$table->string('name')->nullable();
언급URL : https://stackoverflow.com/questions/14013832/make-column-not-nullable-in-a-laravel-migration
반응형
'it-source' 카테고리의 다른 글
명령줄에서 PHP 코드 문자열 실행 (0) | 2023.01.15 |
---|---|
도커 MariaDB 컨테이너의 영구 스토리지 컨테이너를 백업할 수 없습니다. (0) | 2023.01.15 |
문자열을 이중으로 변환합니다. 이것이 가능한가요? (0) | 2023.01.15 |
GROUP_CONCAT 쉼표 구분자 - MySQL (0) | 2023.01.15 |
Maria와 함께 Magento 2.1 설치DB (0) | 2023.01.15 |