본문 바로가기
MySql

MySQL Laravel 쿼리에 데이터 정렬을 추가하는 방법

by 베이스 공부 2020. 12. 20.
반응형

다음과 같이 collate utf8_bin 이있는 쿼리를 실행해야합니다.

SELECT * FROM `table` WHERE `field`='value' collate utf8_bin;

이것은 엄격하게 관리 스크립트를위한 것이며 특정 쿼리에 대해서만 테이블 문자 집합 자체를 업데이트하고 싶지 않습니다.

Eloquent ORM을 사용하여이 작업을 수행 할 수 있습니까? 아니면이 쿼리를 작성해야합니까?

 

해결 방법

 

하나를 사용하도록 MySQL 드라이버를 구성 할 수 있으므로 :

'mysql' => array(
    'driver'    => 'mysql',
    'host'      => 'localhost',
    'database'  => 'database',
    'username'  => 'root',
    'password'  => '',
    'charset'   => 'utf8',
    'collation' => 'utf8_unicode_ci',
    'prefix'    => '',
),

특정 쿼리에 대해 다른 연결을 만들 수 있습니다.

'mysql-collation' => array(
    'driver'    => 'mysql',
    'host'      => 'localhost',
    'database'  => 'database',
    'username'  => 'root',
    'password'  => '',
    'charset'   => 'utf8',
    'collation' => '<your collation>',
    'prefix'    => '',
),

그리고 쿼리에 해당 연결을 사용하십시오.

$users = DB::connection('mysql-collation')->select(...);

수정 :

모델에서는 다음과 같이 연결을 설정할 수 있습니다.

$posts = new Word;
$posts->setConnection('mysql-collation');
$posts->where(...);

 

참조 페이지 https://stackoverflow.com/questions/19514247

 

 

반응형

댓글