`
sunrf5566
  • 浏览: 76775 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

查询表 字段名称、数据类型、是否为空、默认值、主键、外键

阅读更多

一,查询表基本信息

select
utc.column_name,utc.data_type,utc.data_length,utc.data_precision,
utc.data_Scale,utc.nullable,utc.data_default,ucc.comments
from
user_tab_columns utc,user_col_comments ucc
where
utc.table_name = ucc.table_name
and utc.column_name = ucc.column_name
and utc.table_name = 'ONLINEXLS'
order by
column_id

注意:order by column_id的意义是使得结果按照设计数据结构时的顺序显示。

二,查询表主键

select
col.column_name
from
user_constraints con,user_cons_columns col
where
con.constraint_name=col.constraint_name and con.constraint_type='P'
and col.table_name='ONLINEXLS'
三,查询表外键

select
distinct(ucc.column_name) column_name,rela.table_name,rela.column_name column_name1
from
user_constraints uc,user_cons_columns ucc,
(select t2.table_name,t2.column_name,t1.r_constraint_name from user_constraints t1,user_cons_columns t2 where t1.r_constraint_name=t2.constraint_name and t1.table_name='ONLINEXLS') rela
where
uc.constraint_name=ucc.constraint_name
and uc.r_constraint_name=rela.r_constraint_name
and uc.table_name='ONLINEXLS'

 

有了上述几个SQL语句,再结合程序(如:java+jxl),就可以输出如下图所示的Excel报表了。


1、查找表的所有索引(包括索引名,类型,构成列):

select t.*,i.index_type from user_ind_columns t,user_indexes i where t.index_name = i.index_name and t.table_name = i.table_name and t.table_name = 要查询的表

2、查找表的主键(包括名称,构成列)表名大写 :

select cu.* from user_cons_columns cu, user_constraints au where cu.constraint_name = au.constraint_name and au.constraint_type = 'P' and au.table_name = '要查询的表' ;

仅 查询表主键
select column_name from user_cons_columns wherE CONSTRAINT_NAME in (select CONSTRAINT_NAME from user_constraints where table_name =upper('表名') and CONSTRAINT_TYPE='P');


3、查找表的唯一性约束(包括名称,构成列):

select column_name from user_cons_columns cu, user_constraints au where cu.constraint_name = au.constraint_name and au.constraint_type = 'U' and au.table_name = 要查询的表

4、查找表的外键(包括名称,引用表的表名和对应的键名,下面是分成多步查询):

select * from user_constraints c where c.constraint_type = 'R' and c.table_name = 要查询的表

查询外键约束的列名:

select * from user_cons_columns cl where cl.constraint_name = 外键名称

查询引用表的键的列名:

select * from user_cons_columns cl where cl.constraint_name = 外键引用表的键名

5、查询表的所有列及其属性

select t.*,c.COMMENTS from user_tab_columns t,user_col_comments c where t.table_name = c.table_name and t.column_name = c.column_name and t.table_name = 要查询的表

来源:http://hi.baidu.com/iheejun23/blog/item/b2142b0085f9a6057aec2cb4.html

分享到:
评论

相关推荐

    Access数据库应用教程(2)

    3. **设置字段属性**:可以设置字段的长度、是否允许空值、默认值等,进一步规范数据输入。 4. **创建主键**:主键是表中唯一标识每条记录的字段或一组字段,用于确保数据的唯一性和完整性。 5. **创建索引**:...

    sql2000获得表结构包括外键

    根据提供的文件信息,我们可以深入探讨如何使用SQL查询来获取SQL Server 2000中某个特定表的结构信息,包括其列定义、数据类型、是否允许空值、默认值、是否为主键或外键等详细属性。这在进行数据库迁移、备份恢复、...

    第6章 数据表的创建与操作.ppt

    - 查看数据表的结构使用`DESCRIBE`或`DESC`命令,可获取表的字段信息,如字段名、数据类型、主键、默认值等。 2. 设置数据表的约束条件: - 主键约束是确保数据唯一性和完整性的关键,可以是单字段或联合字段。...

    要在数据库中创建一个表要先定义表中的字段名.doc

    定义表的结构需要考虑多个因素,例如字段的数据类型、字段的长度、字段的默认值等。不同的字段类型有不同的特点,例如字符型字段可以存储字符串,数字型字段可以存储数字等。 在定义表的结构时,还需要考虑字段之间...

    mysql处理添加外键时提示error 150 问题的解决方法

    例如,外键的引用类型不一样,主键是 int 外键是 char,或者找不到主表中引用的列,或者主键和外键的字符编码不一致等。 解决方案是在 sql 后面加上了 ENGINE=INNODB DEFAULT CHARSET=utf8; charset 对应的换成你的...

    MySQL 代码的笔记1

    `,其中 name 是数据表的名称,字段名是字段的名称,数据类型是字段的数据类型,约束是字段的约束条件。 * 如果数据表不存在,可以使用 `CREATE TABLE IF NOT EXISTS name (字段名 数据类型 约束,……);` 创建数据...

    ACCESS教材第4、5章习题.pdf

    字段属性是字段的基本特征,包括字段名称、数据类型、字段大小、默认值、有效性规则等。字段属性可以在设计视图下进行设置。 关系数据库 关系数据库是ACCESS数据库管理系统的核心概念。关系数据库由多个表组成,每...

    数据库数据表操作的实验

    表结构中定义了字段、数据类型、主键约束、外键约束、默认值和非空约束。 - `ALTER TABLE`语句用于修改表结构,如添加新字段、设置唯一性约束、添加检查约束和外键约束。 - `DROP TABLE`语句用于删除表,但需要...

    用友T+数据字典

    这份《用友T+数据字典》详细列出了T+软件中所有数据库表的结构,包括字段名、字段类型、字段长度、是否为主键、是否允许为空等关键信息。通过这些信息,开发者可以了解每个业务对象在数据库中的具体表现,从而更准确...

    数据库创建语句mysql

    - 创建表使用的是`CREATE TABLE`语句,并需在其中定义表的结构,包括字段类型、是否允许为空、默认值等。 ### 建表语句详解 1. 创建客户信息表(customers): - 使用`CREATE TABLE customers`语句创建了一个名为...

    MySQL_2_约束和多表查询1

    建表原则是,需要创建第三张表,中间表中至少两个字段,这两个字段分别作为外键指向各自一方的主键。 一对一关系 一对一关系是指一个表中的一个记录对应另一个表中的一个记录。建表原则是,在两个表中都创建一个...

    mysql添加字段.docx

    例如,如果你想在名为`students`的表中添加一个`age`字段,类型为整型,并设置默认值为18,你可以使用以下语句: ```sql ALTER TABLE students ADD age INT DEFAULT 18; ``` 如果你希望新字段位于已有字段`name`...

    经典SQL语句大全_主外键_约束

    1. **主键约束(Primary Key Constraint)**:定义表中一个或多个字段,它们的组合必须是唯一的,并且不允许为空。主键约束用于唯一标识表中的每一行,是其他表通过外键引用的基础。例如: ```sql CREATE TABLE ...

    access教程PPT教学课件.pptx

    3. 设计视图创建:在设计视图中,可以直接定义字段名称、数据类型、大小等属性,更加灵活地构建表结构。 在创建表时,需注意以下知识点: - 字段命名规则:字段名要具有代表性,不超过64个西文字符(或32个汉字),...

    t+数据字典

    在用友T+中,数据字典详细列出了每个数据表的字段名称、字段类型、长度、小数位数、是否为主键、允许为空、默认值等属性,以及字段的业务含义,帮助用户更好地掌握和使用软件。 用友T+11.5版本的数据字典包含的详细...

    金蝶K3数据库字典详细说明

    在金蝶K3中,数据库字典包含了所有系统使用的表格及其字段的定义、数据类型、长度、是否为主键、是否允许为空、默认值以及字段描述等关键信息。这份"数据库说明"文件,很可能是以Excel格式提供的,方便用户查看和...

    查询数据库名,表名,表字段等

    通过连接`syscolumns`、`systypes`和`sysobjects`三个系统表,可以查询特定表(此处为`AREA_INFO`)的所有字段及其相关信息,如字段名称、数据类型、长度和是否可为空等。 #### 查询存储过程定义 ```sql -- 查询...

    MySQL创建数据表(CREATE TABLE语句)

    其中,`表名`是你想要创建的数据表的名称,`字段名`是数据表中的列名,`字段类型`指定了列的数据类型,`字段属性`如长度、默认值、是否可为空等,`约束条件`则包括主键、外键、唯一性约束等。 2. **数据类型** - ...

    Mysql练习题基础操作 单表查询 多表查询 数据更新

    在进行MySQL的学习与实践时,基础操作、单表查询、多表查询以及数据更新是四个核心知识点。 1. **基础操作**: - **创建数据库**:使用`CREATE DATABASE`语句创建数据库,如`CREATE DATABASE fuxi;` - **删除...

Global site tag (gtag.js) - Google Analytics