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

时间:2021-06-02 13:50:59


欢迎更多的朋友加入我的QQ群  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_tables where table_name='表名' //在所有表中查询指定表

       select table_name,tablespace_name,temporary from all_tables where 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                主数据库