使用SQL查询所有数据库名和表名问题
目录
- MySQL中查询所有数据库名和表名
- SQLServer中查询所有数据库名和表名
- Oracle中查询所有数据库名和表名
MySQL中查询所有数据库名和表名
查询所有数据库
show databases;
查询指定数据库中所有表名
方法一、
use 数据库名
show tables;
方法二、
select table_name from information_schema.tables where table_schema='数据库名' and table_type='BASE TABLE';
查询指定表中的所有字段名
select column_name from information_schema.columns where table_schema='数据库名' and table_name='表名';
查询指定表中的所有字段名和字段类型
show create table 表名;
或者
select column_name,data_type from information_schema.columns where table_schema='数据库名' and table_name='表名';
SQLServer中查询所有数据库名和表名
查询所有数据库
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');
Oracle中查询所有数据库名和表名
查询所有数据库
由于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';--表名要全大写
以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。
赞 (0)