精华内容
下载资源
问答
  • 在查询时,注意的名字需要全部大写 1.查询字段 SELECT column_name FROM user_tab_columns where table_name = upper('表名') ;...3.查询主键 select col.column_name from user_constraint

    在查询时,注意表的名字需要全部大写
    1.查询表的字段

    SELECT column_name FROM user_tab_columns where table_name = upper('表名') ;
    
    

    2.查询表的字段以及类型

    SELECT table_name, column_name, data_type FROM all_tab_cols WHERE table_name = '表名';
    
    

    3.查询表的主键

    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='表名';
    
    

    4.查询表的外键

    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='BBSDETAIL') rela
     where  uc.constraint_name=ucc.constraint_name
     and uc.r_constraint_name=rela.r_constraint_name
     and uc.table_name='表名';
    

    5…Oracle获取表字段名,字段类型,字段长度,注释

    SELECT b.comments as 注释,
           a.column_name as 列名,
           a.data_type || '(' || a.data_length || ')' as 数据类型,
           a.nullable as 是否为空
      FROM user_tab_columns a, user_col_comments b
     WHERE a.TABLE_NAME = '表名'
       and b.table_name = '表名'
       and a.column_name = b.column_name;
    
    展开全文
  • oracle没有自动主键自动增长的功能,那我们得另辟蹊径. 假如有: create table product( pid number(8) primary key, pname varchar2(20) not null ); 我们可以使用oracle的序列来实现自动增长. 在数学上,...
    oracle没有自动主键自动增长的功能,那我们得另辟蹊径.

    假如有表:

    create table product(
        pid number(8) primary key,
        pname varchar2(20) not null       
        );
    

    我们可以使用oracle的序列来实现自动增长.

    • 在数学上,序列是被排成一列的对象(或事件);这样每个元素不是在其他元素之前,就是在其他元素之后。
    • 在oracle中,序列是一数据库对象,利用它可生成唯一的整数。一般使用序列自动地生成主码值。一个序列的值是由特殊的Oracle程序自动生成,因此序列避免了在应用层实现序列而引起的性能瓶颈。在oracle中,序列是唯一、上升、递增量为1、起始值为1、没有上限的一列对象。
    -- 为表product创建一个名为produuct_seq的序列
    create sequence produuct_seq;
    
    -- 示例:
    insert into product values(
           product_seq.nextval,
           '鸡你太美'
    )
    

    进阶,使用触发器让oracle自动添加主键自增长:

    -- 也需要使用上面创建了的produuct_seq序列
    create or replace trigger product_tri   -- 创建一个叫product_tri的触发器
    before insert on product 
    referencing old as old new as new -- 起别名old new  相当于 :new-->new  作用:解决与列名冲突 如果表中没有new,old列名不写这行也行
    for each row -- 行触发器 一行触发一次 不写默认是表级触发器
    DECLARE
    begin
     select product_tri.nextval into:new.pid from dual;    -- new是新插入的数据,old是原来的数据 begin和end之间出现的new和old需要加上冒号:
    end;
    
    展开全文
  • oracle查询字段信息和主键信息

    千次阅读 2019-04-20 15:27:32
    字段信息 select A.TABLE_NAME,A.COLUMN_ID,A.COLUMN_NAME, case A.DATA_TYPE when ‘VARCHAR2’ then A.DATA_TYPE||’(’||A.DATA_LENGTH||’)’ when ‘NUMBER’ then A.DATA_TYPE||’(’||A.DATA_PRECISION...

    –字段信息

    select A.TABLE_NAME,A.COLUMN_ID,A.COLUMN_NAME,
    case A.DATA_TYPE 
    when 'VARCHAR2' then A.DATA_TYPE||'('||A.DATA_LENGTH||')' 
    when 'NUMBER' then A.DATA_TYPE||'('||A.DATA_PRECISION||','||A.DATA_SCALE||')'
    else A.DATA_TYPE
    end DATA_TYPE
    ,C.COMMENTS
    from user_tab_columns A
    left join user_col_comments C
    on A.TABLE_NAME=C.TABLE_NAME and A.COLUMN_NAME=C.COLUMN_NAME
    --where A.owner='xxx' and A.table_name like 'xxx%'  
    order by A.table_name,A.COLUMN_ID;
    

    –主键信息

    select cu.TABLE_NAME,utc.COMMENTS,cu.CONSTRAINT_NAME,cu.column_name 
    from user_cons_columns cu,
     user_constraints au,
     user_tab_comments utc
    where cu.constraint_name=au.constraint_name 
    and cu.TABLE_NAME=utc.TABLE_NAME
    and cu.POSITION=1
    order by cu.table_name;
    
    展开全文
  • ORACLE 查询表字段信息(是否主键

    千次阅读 2020-08-31 17:42:49
    distinct ut.COLUMN_NAME,--字段名称 uc.comments,--字段注释 ut.DATA_TYPE,--字典类型 ut.DATA_LENGTH,--字典长bai度 ut.NULLABLE,--是否为空du CASE b.constraint_type WHEN 'P' THEN 'Y' ELSE 'N' END ...

    select
        utc.column_name as 字段名,utc.data_type 数据类型,utc.data_length 最大长度,
    CASE utc.nullable WHEN 'N' THEN '否' ELSE '是' END 可空,
    utc.data_default 默认值,ucc.comments 注释,UTC.table_name 表名,
       CASE UTC.COLUMN_NAME 
      WHEN (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='tableName')   THEN '是' ELSE '否' END AS 主键
    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 = 'tableName
    order by
        column_id;

    展开全文
  • Oracle增加修改删除字段/主键

    万次阅读 2016-11-04 23:20:35
    修改字段名称alter table xgj rename column old_name to new_name;修改字段类型alter table tablename modify (column datatype ...栗子假设xgj,有一个字段为name,数据类型char(20)。create table xgj( id n
  • 查询基础信息 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 wh
  • 到此这篇关于Navicat Premium中Oracle创建主键自增的方法的文章就介绍到这了,更多相关Navicat Premium主键自增内容请搜索软件开发网以前的文章或继续浏览下面的相关文章希望大家以后多多支持软件开发网!
  • t_sjzxj_dbitem中的字段id,被其他作为外键,现有个需求在删除t_sjzx_dbitem中的记录时,将其关联的记录一并删除,先用sql找出id被哪些的哪个字段做了外键关联,然后再将关联的记录一起删除。 select c.TABLE...
  • --新增主键(没有主键字段,则新增一个主键字段,然后赋值,然后再添加主键) alter table REPORT_ABNORAML add ID number(11) null; --删除序列 --drop SEQUENCE SEQ_REPORT_ABNORAML --增加序列 CREATE SEQUENCE SEQ...
  • oracle中设置主键字段为自增序列(实例) 1、首先创建一个(如日志) //删除库中存在的日志 drop table S_LOG_INFO cascade constraints; //新建日志 create table S_LOG_INFO ( PRIMARYKEY ...
  • 根据数据库的四大参数获取指定库中的所有 //根据数据库的参数获取指定库中的所有 public static List<Map<String, String>> getDbTables(String driver, String url, String user, String pwd) { ...
  • oracle新建主键自增 我电脑装的是Oracle数据库,而在看教学视频时,好多用的是mysql数据库。 此时出现了一个问题: 用mysql新建时 直接给字段定义auto_increment就可以实现字段值自增。 而Oracle没有这个功能...
  • 一、创建表 1、lz以demo表为例,创建表语句如下: CREATE TABLE demo ( id INT NOT NULL, names VARCHAR2(40) NULL ) 2、在navicat中执行建表语句如下图: ...3、选中demo表,鼠标右键点击设计表可以查看表结构
  • select r.TABLE_NAME from USER_CONSTRAINTS p, USER_CONSTRAINTS r where p.TABLE_NAME = 'TABLENAME' and r.CONSTRAINT_TYPE = 'R' ...将TABLENAME换成真实的表名,即可查看这张表的主键被哪些引用了 ...
  • oracle中设置主键字段自增

    千次阅读 2016-01-09 23:56:02
    oracle中设置主键字段自增 --oracle中设置主键字段自增长  --1创建一个测试  create table xw_table(xh number(10) primary key not null,xm varchar2(10),sex char(2) check(sex in('男','女')));  ...
  • 获取ORACLE 表字段,表名,以及主键之类等等的信息 基本开发中要用的信息都能取到了.
  • Oracle删除表主键语句

    千次阅读 2017-09-28 09:42:00
    删除无名主键语句: SELECT * FROM USER_CONS_COLUMNS WHERE TABLE_NAME = '表名'; ALTER TABLE 表名 DROP CONSTRAINT 主键名称; 上面语句需要手动,如何自动执行?看下面: CREATE OR REPLACE FUNCTION ...
  • 新建测试,构造测试数据 Step2. 查看索引状态 Step2.1 普通索引 Step2.2 分区索引 Step2.3 子分区索引 Step3. 探究truncate分区对global索引以及local索引的影响 Step3.1 不指定update global indexes的场景 ...
  • oracle查看表字段属性和说明sql

    万次阅读 2016-10-14 14:29:36
    查看表的说明 SQL> select * from user_tab_comments where TABLE_NAME='USER_INFO'; 查看表中列的说明 SQL> select * from user_col_comments where TABLE_NAME='USER_INFO';
  • Oracle添加主键、删除主键、修改主键

    万次阅读 多人点赞 2019-04-01 16:48:43
    二、回归主题,主键的添加、删除等操作 1.有命名主键 1)有命名主键的添加 2)有命名主键的删除 3)有命名主键的修改 2.无命名主键 1)无命名主键的创建 2)无命名主键的删除 3)无命名主键的修改 附加: ...
  • 原来中午主键新增一个主键 – 增加一个ID字段 – Add/modify columns alter table tablename add id number; –创建自增序列 – Create sequence create SEQUENCE seq_tablename minvalue 1 maxvalue ...
  • Oracle】 设置主键

    千次阅读 2020-12-22 10:09:56
    请移步原文:https://www.php.cn/oracle/455511.html oracle设置主键的方法: ... 主键(primary key)是中的一个或多个字段,它的值用于唯一地标识中的某一条记录。 所谓的复合主键,就是指...
  • 首先查看需要修改的主键名 select *from user_cons_columns where table_name = '表名'; (表名要大写否则查不出来) 删除主键约束 alter table 表名 drop constraint 主键名;(通过上一步查找出来的) 添加主键约束...
  • MYSQL \ORACLE\SQL 删除主键字段

    千次阅读 2015-12-29 16:51:30
    查找主键名称得student中的主键名为SYS_C002715 alter table student drop constraint SYS_C002715; (2)有命名 alter table students drop constraint yy; 3、向中添加主键约束 alter ...
  • oracle表中更改主键

    万次阅读 2018-01-21 23:19:25
    一、数据主键但无主键约束名 先删除之前的主键,后添加主键 a. alter table 表名 drop primary key; b. alter table 表名 add primary key(想要更改的字段名称); 二、数据主键也有主键约束名 (1)...
  • oracle修改主键方法

    2020-11-27 18:22:03
    修改主键方法: step1:删除已建好的主键 alter table [表名] drop primary key --有主键主键约束名的情形 alter table [表名] drop ...alter table add constraint [主键约束名] primary key ([字段名1],[字段名2
  • 1、查询所有 select t.table_name as tablecode,t1.comments as tablename from user_tables t,user_tab_comments t1 where t.TABLE_NAME=t1.TABLE_NAME and t....2、查询中所有字段 select t.column_name ...
  • Oracle生成唯一主键

    2020-12-14 10:40:36
    首先创建一张,名为TEST_USER CREATE TABLE TEST_USER ( ID NUMBER(11) NOT NULL PRIMARY KEY, USER_ID VARCHAR2(11), USER_NAME VARCHAR2(11), CREATED_BY VARCHAR2(11), GMT_CREATE DATE, MODIFIED_BY ...
  • oracle中创建表主键id依据sequence自增长
  • Oracle修改结构字段名和字段长度

    万次阅读 2015-12-01 12:16:34
    Oracle修改表字段名和长度的方式与标准的sql不一样,它需要增加特定的关键字。 使用rename关键字来实现字段名的修改:alter table 表名 rename column旧的字段名 to 新的字段名; alert table wtc column rename ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 88,449
精华内容 35,379
关键字:

oracle查看表主键字段