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

 

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';--表名要全大写

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程宝库

 进入mysql命令mysql -u 用户名 -p回车然后输密码或mysql -u用户名 -p回车然后输密码 退出mysql命令mysql > exit;mysql ...