如何查询Oracle,Sql Server,MySQL 中的数据库名称、数据表名称、字段名称

时间:2022-09-25 00:38:06

在开发项目的时候有个功能需要查看数据库中有哪些表,以及每个表有哪些字段,在网上查看了一下,现在分享给大家。

Oracle:


查询数据表(Tables)名称:
select Table_Name, Tablespace_Name
from Dba_Tables
where Tablespace_Name = 'USERS';
查询数据表(Tables)中的字段(Columns)名称:
sql1:select column_name from all_tab_columns where table_name='table1';
sql2:select column_name from user_tab_columns where table_name='table1';
查询数据库(Databases)名称

Sql Server:


查询数据库(Databases)名称:
SELECT name FROM master.dbo.sysdatabases WHERE status <> 512
查询数据表(Tables)名称:
SELECT name FROM dbo.sysobjects WHERE OBJECTPROPERTY(id,N'IsUserTable') = 1 AND name <> 'dtproperties'
查询带Schema 的数据表(Tables)名称:
SELECT b.name + '.' + a.name AS name FROM sysobjects a INNER JOIN sys.schemas b ON a.uid=b.schema_id WHERE OBJECTPROPERTY(id,N'IsUserTable') = 1 AND a.name <> 'dtproperties'
查询数据表(Tables)中的字段(Columns)名称:

SELECT * FROM dbo.syscolumns WHERE id=OBJECT_ID(N'[Production].[Product]') ORDER BY colid

或者

Select name from syscolumns Where ID=OBJECT_ID('tName') 

Mysql:


查询数据库(Databases)名称:
SHOW DATABASES /*这可以查看到所有的数据库名称*/
查询数据表(Tables)名称:
SHOW TABLES /*可以查看到当前数据库的所有表*/
查询数据表(Tables)中的字段(Columns)名称:
show columns form 表名 from 数据库名
或者:
show columns from 数据库名.表名