반응형
모든 테이블 및 해당 데이터 정렬을 표시하는 쿼리
mysql에서 실행할 수 있는 쿼리는 모든 테이블과 기본 대조 결과를 보여줍니까?이 항목이 있으면 모든 테이블의 모든 열에 모든 데이터 정렬을 표시할 수 있습니다.
SELECT TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME, COLLATION_NAME
FROM INFORMATION_SCHEMA.COLUMNS
대조는 테이블 및 열에도 정의할 수 있습니다.
열의 조합은 상위 테이블과 다를 수 있습니다.테이블(열 아님)에서 데이터 정렬을 가져오기 위한 쿼리입니다.
SELECT TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME, TABLE_COLLATION
FROM INFORMATION_SCHEMA.TABLES;
데이터베이스의 모든 테이블에 대한 정보(상태)를 "phpmyadmin"으로 출력합니다.
SHOW TABLE STATUS FROM your_db_name;
데이터베이스 조합과 일치하지 않는 열을 확인하려면 이 옵션을 실행합니다.쿼리 및 조건에 이러한 열을 사용하려면 일치시키는 COLATE 힌트를 사용해야 합니다.
SELECT
CLM.[TABLE_CATALOG]
,CLM.[TABLE_SCHEMA]
,CLM.[TABLE_NAME]
,CLM.[COLUMN_NAME]
,CASE
WHEN CLM.[CHARACTER_MAXIMUM_LENGTH] IS NOT NULL THEN CLM.[DATA_TYPE] + '(' + CASE WHEN CLM.[CHARACTER_MAXIMUM_LENGTH] = '-1' THEN 'max' ELSE CAST(CLM.[CHARACTER_MAXIMUM_LENGTH] AS NVARCHAR(10)) END + ')'
ELSE CLM.[DATA_TYPE]
END AS [DATA_TYPE]
,CLM.[CHARACTER_SET_NAME]
,CLM.[COLLATION_NAME]
-- ,CLM.*
FROM INFORMATION_SCHEMA.COLUMNS CLM (NOLOCK)
LEFT JOIN sys.databases DBS (NOLOCK) ON CLM.[TABLE_CATALOG] = DBS.[name]
WHERE CLM.[COLLATION_NAME] IS NOT NULL AND CLM.[COLLATION_NAME] != DBS.[collation_name]
언급URL : https://stackoverflow.com/questions/4948356/query-to-show-all-tables-and-their-collation
반응형
'programing' 카테고리의 다른 글
PHPUnit: 아사트Instance Of()가 작동하지 않습니다. (0) | 2022.09.06 |
---|---|
Axios를 사용하여 폼에서 파일을 게시하는 방법 (0) | 2022.09.06 |
메모리 캐시와 APC 중 어느 것을 선택해야 합니까? (0) | 2022.09.06 |
HTML 요소의 위치(X,Y)를 검색합니다. (0) | 2022.09.06 |
base64를 사용하여 이미지 파일 인코딩 (0) | 2022.09.06 |