SQL查询表名、列名、列属性

Oracle:

1.查询表名:

  select table_name,tablespace_name,temporary from user_tables//在所有非管理员创建的表中查询

‍ select table_name,tablespace_name,temporary from dba_tables//在所有管理员创建的表中查询

‍   select table_name,tablespace_name,temporary from all_tables //在所有表中查询

select table_name,tablespace_name,temporary from all_tableswhere table_name='表名' //在所有表中查询指定表

select table_name,tablespace_name,temporary from all_tableswhere lespace_name='表空间名' //在所有表中查询属性指定表空间的表

  其中:table_name:表名(varchar2(30));

  tablespace_name:存储表名的表空间(varchar2(30));

  temporary:能无法为暂时表(varchar2(1))。

  eg: select table_name,tablespace_name,temporary from user_tables where table_name='TEST_TEMP';

  结果:

  --------------------------------------------------------------------------------

  table_name tablespace_name temporary

  TEST_TEMP SDMP N

  --------------------------------------------------------------------------------

  注:表名变量值必须大写。

  2.查询表列名:

  复制代码代码如下:

‍ SELECT COLUMN_NAME FROM USER_TAB_COLUMNS WHERE TABLE_NAME = '表名' ORDER BY COLUMN_ID

  SELECT COLUMN_NAME FROM DBA_TAB_COLUMNS WHERE TABLE_NAME = '表名' ORDER BY COLUMN_ID

‍ SELECT COLUMN_NAME FROM ALL_TAB_COLUMNS WHERE TABLE_NAME = '表名' ORDER BY COLUMN_ID

  select column_name,data_type ,data_length,data_precision,data_scale from user_tab_columns where table_name='表名';

  其中:column_name:列名(varchar2(30));

  data_type:列的数据类型(varchar2(106));

  data_length:列的长度(number);

  eg:select column_name,data_type ,data_length,data_precision,data_scale from user_tab_columns where table_name='TEST_TEMP';

结果:

column_name data_type data_length data_precision data_scale

  ID NUMBER 22 0

  NAME NVARCHAR2 20

  SEX CHAR 1

  GRADE NVARCHAR2 10

  --------------------------------------------------------------------------------

  注:表名变量值必须大写。

  另外,也可以 议决 all_tab_columns来获取有关表的数据。

  eg:select * from all_tab_columns where table_name='TEST_TEMP';


sqlserver:

select name from syscolumns where id=object_id('表名')

select count(*) from syscolumns where id=object_id('表名')


--读取库中的所有表名

select name from sysobjects where xtype='u'

--读取指定表的所有列名
select name from syscolumns where id=(select max(id) from sysobjects where xtype='u' and name='表名')
获取数据库表名和字段
sqlserver中各个系统表的作用
sysaltfiles 主数据库保存数据库的文件
syscharsets 主数据库 字符集与排序顺序
sysconfigures 主数据库 配置选项
syscurconfigs 主数据库 当前配置选项
sysdatabases 主数据库 服务器中的数据库
syslanguages 主数据库 语言
syslogins 主数据库

你可能感兴趣的:(SQL查询表名,列名,列属性)