반응형
기본 키로 지정하지 않고 어떻게 하면 원칙 2를 사용하여 INDEX를 열에 추가할 수 있습니까?
MySQL 데이터베이스의 테이블 열에 인덱스를 추가하려고 합니다.데이터베이스 스키마를 작성하기 위해 원칙 2를 사용하고 있습니다.
나는 내가 사용할 수 있다는 것을 안다.
/** @Id @Column(type="integer") */
프라이머리 키를 만듭니다.하지만 제 칼럼에는unique
또한primary key
기여하다.간단히 말하면,index
(MySQL은 이 세 가지 유형을 인식합니다)
이러한 인덱스를 작성하기 위한 적절한 문장은 무엇입니까?
원칙에 따라 작업하려면 테이블에 기본 키가 있어야 합니다.
모든 엔티티 클래스에는 식별자/프라이머리 키가 있어야 합니다.를 사용하여 식별자로 사용할 필드를 선택할 수 있습니다.
@Id
주석입니다.
레퍼런스:식별자 및 기본 키
색인을 작성하려면: 주석 참조
<?php
/**
* @Entity
* @Table(name="ecommerce_products",indexes={
* @Index(name="search_idx", columns={"name", "email"})
* })
*/
class ECommerceProduct
{
}
이것은 PHP 코드에서 스키마를 생성하는 경우에만 사용됩니다.따라서 테이블이 이미 존재하는 경우 인덱스를 직접 추가할 수도 있습니다.
원칙과 ORM을 사용하는 경우:
@ORM\Table(indexes={@ORM\Index(name="name_idx", columns={"name"})})
Symfony를 교리와 함께 사용하는 경우,use
그Index
주석이 올바르게 작동하기 위한 클래스
use Doctrine\ORM\Mapping\Index;
작업 코드의 일부
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Entity(repositoryClass="AppBundle\Repository\CountryRepository")
* @ORM\Table(indexes={@ORM\Index(columns={"slug"})})
*/
class Country extends AbstractTrans implements SuggesterItem
언급URL : https://stackoverflow.com/questions/17991782/how-can-i-add-an-index-with-doctrine-2-to-a-column-without-making-it-a-primary-k
반응형
'source' 카테고리의 다른 글
Mac OS X의 MySQL 설치 위치 알아보기 (0) | 2022.09.13 |
---|---|
MySQL Workbench가 mysql.proc를 로드할 수 없습니다. (0) | 2022.09.13 |
오류 1046 데이터베이스가 선택되지 않았습니다. 해결 방법 (0) | 2022.09.13 |
Jest를 사용하여 코드 커버리지 보고서를 얻는 방법은 무엇입니까? (0) | 2022.09.13 |
JavaScript로 화면 해상도를 검출하는 방법 (0) | 2022.09.13 |