牛骨文教育服务平台(让学习变的简单)
博文笔记

使用SQL查询所有数据库名和表名

创建时间:2015-03-03 投稿人: 浏览次数:25925

查询所有数据库

show databases;

查询指定数据库中所有表名

select table_name from information_schema.tables where table_schema="database_name" and table_type="base table";

查询指定表中的所有字段名

select column_name from information_schema.columns where table_schema="database_name" and table_name="table_name";

查询指定表中的所有字段名和字段类型

select column_name,data_type from information_schema.columns where table_schema="database_name" and table_name="table_name";

查询所有数据库

select * from sysdatabases;

查询当前数据库中所有表名

select * from sysobjects where xtype="U";
xtype="U":表示所有用户表,xtype="S":表示所有系统表。

查询指定表中的所有字段名

select name from syscolumns where id=Object_Id("table_name");

查询指定表中的所有字段名和字段类型

select sc.name,st.name from syscolumns sc,systypes st where sc.xtype=st.xtype and sc.id in(select id from sysobjects where xtype="U" and name="table_name");

查询所有数据库

由于Oralce没有库名,只有表空间,所以Oracle没有提供数据库名称查询支持,只提供了表空间名称查询。

select * from v$tablespace;--查询表空间(需要一定权限)

查询当前数据库中所有表名

select * from user_tables;

查询指定表中的所有字段名

select column_name from user_tab_columns where table_name = "table_name";--表名要全大写

查询指定表中的所有字段名和字段类型

select column_name, data_type from user_tab_columns where table_name = "table_name";--表名要全大写
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。