Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

MySQL에서 한 쌍의 열을 고유하게 만드는 방법은 무엇입니까?

<시간/>

한 쌍의 열을 고유하게 만들려면 ALTER TABLE 명령과 함께 UNIQUE를 사용하십시오. 다음은 구문입니다 -

테이블 yourTableName 변경 고유 yourUniqueName(yourColumnName1,yourColumnName2,...N);

먼저 테이블을 생성하겠습니다 -

mysql> 테이블 생성 DemoTable( StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY, StudentFirstName varchar(100), StudentLastName varchar(100), StudentAge int, StudentPhoneNumber varchar(20));Query OK, 0개의 행이 영향을 받았습니다(0.81초) 

다음은 MySQL에서 한 쌍의 고유한 열을 만드는 쿼리입니다 -

mysql> alter table DemoTable add unique DemoTable_unique_StudentFirstName_StudentPhoneNumber(StudentFirstName,StudentPhoneNumber);쿼리 OK, 영향을 받는 행 0개(0.40초) 레코드:0 중복:0 경고:0

삽입 명령을 사용하여 테이블에 일부 레코드 삽입 -

mysql> insert into DemoTable(StudentFirstName,StudentLastName,StudentAge,StudentPhoneNumber) values('John','Doe',21,'9878567878');Query OK, 영향을 받는 행 1개(0.18초)mysql> insert into DemoTable( StudentFirstName,StudentLastName,StudentAge,StudentPhoneNumber) values('John','Smith',23,'7654674545');Query OK, 영향을 받는 행 1개(0.14초)mysql> DemoTable(StudentFirstName,StudentLastName,StudentvaluePhoneNumber)에 삽입 ('John','Brown',21,'9878567878');오류 1062(23000):'DemoTable_unique_StudentFirstName_StudentPhoneNumber'
키에 대한 중복 항목 'John-9878567878'

select 문을 사용하여 테이블의 모든 레코드 표시 -

mysql> DemoTable에서 *선택;

이것은 다음과 같은 출력을 생성합니다 -

+-----------+------------------+--------------- --+------------+--------------------+| 학생 ID | 학생이름 | 학생 성 | 학생 연령 | 학생전화번호 |+-----------+------------------+---------------- -+------------+--------------------+| 1 | 존 | 미상 | 21 | 9878567878 || 2 | 존 | 스미스 | 23 | 7654674545 |+-----------+------+---------------- -+------------+--------------------+2행 세트(0.00초)