테이블 이름 검색을 위한 교차 데이터베이스 SQL 쿼리
다양한 데이터베이스 시스템과 상호 작용하는 애플리케이션을 구축하려면 일관된 데이터 검색 방법이 필요합니다. 이 문서에서는 SQL을 사용하여 특정 데이터베이스에서 테이블 이름을 가져오는 문제를 해결하고 다양한 서버 유형 간의 호환성을 보장합니다. INFORMATION_SCHEMA.TABLES
뷰는 겉으로는 보편적인 접근 방식을 제공하지만, 데이터베이스 전반에 걸쳐 스키마 처리가 다양하므로 조정이 필요합니다.
순진한 쿼리 접근 방식INFORMATION_SCHEMA.TABLES
은 실수로 모든 데이터베이스의 테이블을 반환할 수 있습니다. 결과를 단일 데이터베이스로 제한하려면 데이터베이스별 수정이 필요합니다.
SQL 서버:
<code class="language-sql">SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE = 'BASE TABLE' AND TABLE_CATALOG = 'dbName'</code>
'dbName'
을 실제 데이터베이스 이름으로 바꾸세요.
MySQL:
<code class="language-sql">SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE = 'BASE TABLE' AND TABLE_SCHEMA = 'dbName'</code>
다시 'dbName'
를 대상 데이터베이스 이름으로 대체하세요.
오라클:
Oracle의 접근 방식은 약간 다릅니다. DBA_TABLES
뷰가 일반적으로 사용됩니다. 정확한 쿼리는 권한에 따라 다를 수 있지만 일반적인 접근 방식은 다음과 같습니다.
<code class="language-sql">SELECT table_name FROM dba_tables WHERE owner = 'dbName'</code>
여기서 'dbName'
은 데이터베이스 소유자 또는 스키마 이름을 나타냅니다. DBA_TABLES
.
이러한 데이터베이스별 조정을 사용하면 기본 데이터베이스 시스템에 관계없이 지정된 데이터베이스에서 테이블 이름을 검색할 수 있는 강력한 애플리케이션을 만들 수 있습니다. 이를 통해 일관된 기능이 보장되고 다양한 환경에서 데이터베이스 상호 작용이 단순화됩니다.
위 내용은 다양한 서버 유형에서 SQL을 사용하여 특정 데이터베이스에서 테이블 이름을 일관되게 검색하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!