프로그래밍 방식으로 일부 테이블의 기본 키를 얻으려면 어떻게해야합니까? 나는 "show create table"또는 "show keys"와 같은 쿼리를 실행할 수 있지만 그 후에는 기본 키에 대한 결과를 구문 분석해야한다는 것을 알고 있습니다. 쉬운 방법이 있는지 궁금해하고있었습니다.mysql : 테이블의 기본 키를 프로그래밍 방식으로 얻는 방법
0
A
답변
1
mysql> SHOW COLUMNS FROM foo WHERE `Key` = 'PRI';
+-------+---------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+---------+------+-----+---------+-------+
| id | int(11) | NO | PRI | NULL | |
+-------+---------+------+-----+---------+-------+
이제 Field
열의 기본 키 열의 이름을 읽으십시오.
이상한 점은 Key
이 역 틱이어야한다는 것입니다. MySQL에서는 일반적으로 열 이름이 대소 문자를 구별하지 않지만이 경우에는 Key
을 사용하지 않으면 열 이름이 작동하지 않습니다.
1
"물리적"테이블 (보기가 아님)로 작업하는 한, 테이블의 기본 키 구성 열에 대한 단일 문자열 표현 (예 : foo.bar
)을 가져올 수 있어야합니다. INFORMATION_SCHEMA 데이터베이스 :
mysql> SELECT GROUP_CONCAT(CONCAT('`', COLUMN_NAME, '`')) AS `PRIMARY KEY`
-> FROM information_schema.KEY_COLUMN_USAGE
-> WHERE CONSTRAINT_NAME = 'PRIMARY'
-> AND TABLE_SCHEMA = 'foo'
-> AND TABLE_NAME = 'bar'
-> ORDER BY ORDINAL_POSITION;
+--------------+
| PRIMARY KEY |
+--------------+
| `baz`,`zoid` |
+--------------+
1 row in set (0.00 sec)
두 가지주의 사항 :
- 당신은 매우 많은 C를 참조 매우 긴 열 이름 또는 키가있는 경우이 주
이외의 키 작동하지 않을 수 있습니다 olumns, 당신은 GROUP_CONCAT 캡으로 실행할 수 있습니다 : 필요한 경우가 보통 set statement를 통해 세션이를 업데이트 할 수 있습니다
mysql> SELECT @@session.group_concat_max_len; +--------------------------------+ | @@session.group_concat_max_len | +--------------------------------+ | 1024 | +--------------------------------+ 1 row in set (0.00 sec)
.
관련 문제
- 1. SQL 서버에서 테이블의 기본 키를 얻는 방법 2008
- 2. C#에서 Ms 액세스 테이블의 기본 키를 얻는 방법
- 3. 엔터티 컬렉션에서 기본 키를 프로그래밍 방식으로 결정하는 방법
- 4. Jpa 테이블 전략 - 기본 키를 얻는 방법
- 5. mySQL 테이블의 행렬을 얻는 방법
- 6. 프로그래밍 방식으로 루어 쉘 액세스를 얻는 방법?
- 7. 프로그래밍 방식으로 안드로이드의 탐색 키를 비활성화하는 방법
- 8. 프로그래밍 방식으로 Azure VM의 기본 OS 세부 정보를 얻는 방법
- 9. 융합 테이블의 필드에 기본 키를 설정하는 방법
- 10. 조인 테이블의 기본 키를 지정하는 방법
- 11. 프로그래밍 방식으로 테이블의 행을 선택하는 방법
- 12. 프로그래밍 방식으로 프로그래밍 방식으로 웹 사이트 기본 문서를 변경하는 방법
- 13. 키를 프로그래밍 방식으로 누르십시오. 코코아로
- 14. Mysql 외래 키가 상위 테이블의 전체 기본 키를 참조해야합니까?
- 15. 데이터 테이블의 기본 키를 제거하십시오
- 16. 기본 인증 프로그래밍 방식으로
- 17. MySQL 데이터베이스 기본 키를 사용
- 18. 기본 테이블의 기본 키를 종속 테이블의 외래 키 필드로 전달해야합니다.
- 19. MYSQL 외래 키로 다른 테이블의 기본 키를 삽입하십시오.
- 20. Java를 사용하여 MySQL 테이블의 모든 기본 키를 가져옵니다.
- 21. 데이터베이스 테이블의 행 바꾸기 기본 키를 사용하여 PHP/mysql
- 22. ID 열의 기본 키를 얻는 방법
- 23. StartingNodeUrl - 값을 프로그래밍 방식으로 얻는 방법?
- 24. 시스템 볼륨을 프로그래밍 방식으로 얻는 방법
- 25. 프로그래밍 방식으로 만든 스피너에서 위치를 얻는 방법
- 26. 프로그래밍 방식으로 Windows 검색 기록을 얻는 방법?
- 27. Ruby로 프로그래밍 방식으로 MAC 주소를 얻는 방법
- 28. contentPlaceHolder의 코드를 프로그래밍 방식으로 얻는 방법
- 29. ViewPanel 헤더를 프로그래밍 방식으로 얻는 방법
- 30. qooxdoo 선글래스 목록을 프로그래밍 방식으로 얻는 방법