MySQL中查询所有数据库名和表名
1.查询所有数据库
SHOW databases;
2.查询指定数据库中所有表名
SELECT TABLE_NAME
FROM
information_schema.tables
WHERE
table_schema = 'database_name'
AND table_type = 'BASE TABLE';
3.查询指定表中的所有字段名(ORDER BY ordinal_position,加入此排序可以按表设计字段返回顺序,不加则按字母排序)
SELECT COLUMN_NAME
FROM
information_schema.COLUMNS
WHERE
table_schema = 'database_name'
AND TABLE_NAME = 'table_name'
ORDER BY
ordinal_position;
4.查询指定表中的所有字段名和字段类型
SELECT COLUMN_NAME
,
data_type
FROM
information_schema.COLUMNS
WHERE
table_schema = 'database_name'
AND TABLE_NAME = 'table_name';
SQLServer中查询所有数据库名和表名
1.查询所有数据库
SELECT
*
FROM
sysdatabases;
2.查询当前数据库中所有表名
SELECT
*
FROM
sysobjects
WHERE
xtype = 'U';
--xtype='U':表示所有用户表,xtype='S':表示所有系统表。
3.查询指定表中的所有字段名
SELECT NAME
FROM
syscolumns
WHERE
ID = Object_Id ( 'table_name' );
4.查询指定表中的所有字段名和字段类型
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中查询所有数据库名和表名
1.查询所有数据库
由于Oralce没有库名,只有表空间,所以Oracle没有提供数据库名称查询支持,只提供了表空间名称查询。
SELECT
*
FROM
v$tablespace;--查询表空间(需要一定权限)
2.查询当前数据库中所有表名
SELECT
*
FROM
user_tables;
3.查询指定表中的所有字段名
SELECT COLUMN_NAME
FROM
user_tab_columns
WHERE
TABLE_NAME = 'table_name';--表名要全大写
4.查询指定表中的所有字段名和字段类型
SELECT
COLUMN_NAME,
data_type
FROM
user_tab_columns
WHERE
TABLE_NAME = 'table_name';--表名要全大写
PG库中查询所有数据库名、表名、字段名、字段类型、字段注释、所有表数据量
1、查询所有数据库名
SELECT
datname
FROM
pg_database
ORDER BY
datname;
2、查询当前数据库下指定schema下所有表名
SELECT TABLE_NAME
FROM
information_schema.tables
WHERE
table_schema = 'schema_name'
3、查询当前数据库指定表名下所有字段名、字段类型、字段注释
SELECT
C.relname "表名",
A.attname "字段名称",
format_type ( A.atttypid, A.atttypmod ) AS "字段类型",
d.description "字段注释"
FROM
pg_class C,
pg_attribute A,
pg_type T,
pg_description d
WHERE
C.relname = 'a_zb_zwfwzt_yshj_yszdzb_xz'
AND A.attnum > 0
AND A.attrelid = C.oid
AND A.atttypid = T.oid
AND d.objoid = A.attrelid
AND d.objsubid = A.attnum
4、查询当前数据库下指定schema所有表数据量(估算值),精确值可查看该博文:postgresql 查询当前schema下所有表数据的数量
SELECT
SUM(reltuples) --reltuples,表中行数,只是规划器使用的一个估计值
FROM
pg_class
WHERE
relname IN ( SELECT DISTINCT TABLE_NAME FROM information_schema.tables WHERE table_schema = 'schema_name' )
更多推荐
使用SQL查询所有数据库名、表名和表字段名
发布评论