精华内容
下载资源
问答
  • oracle视图修改字段类型
    2021-04-30 11:11:11

    SQL codecreate table person(

    p_no varchar2(5),

    pname varchar2(20),

    sex char(1),

    age number(3),

    address varchar2(50));

    SQL> select * from person ;

    P_NO PNAME SEX AGE ADDRESS

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

    1001 James M 56 Mexco--P_NO左对齐,说明是字符类型

    1002 Scott F 22 Tokyo

    1003 Smith M 18 Beijing

    1004 yeeXun M 22 China

    1005 Lili

    --

    create view view_person

    as

    select to_number(nvl(p_no,0)) p_no,pname,age from person;

    SQL> select * from view_person;

    P_NO PNAME AGE

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

    1001 James 56--P_NO右对齐,说明是number类型

    1002 Scott 22

    1003 Smith 18

    1004 yeeXun 22

    1005 Lili

    更多相关内容
  • Oracle 修改字段类型

    千次阅读 2021-03-09 17:04:05
    修改 Oracle 表中字段类型,在该字段存在值的情况下,会提示:ORA-01439:要更改数据类型,则要修改的列必须为空 这时就需要区分情况处理。 数据量比较小的时候,可以直接操作目标表。 重命名字段名,添加新字段,...

    修改 Oracle 表中字段类型,在该字段存在值的情况下,会提示:ORA-01439:要更改数据类型,则要修改的列必须为空

    这时就需要区分情况处理。

    1. 数据量比较小的时候,可以直接操作目标表。
      重命名字段名,添加新字段,复制原始字段数据,删除重命名字段。
    /* 表字段重命名 */
    ALTER TABLE table_name RENAME COLUMN column_name TO column_name_tmp;
    
    /* 新增原始字段同名字段 */
    ALTER TABLE table_name ADD column_name NUMBER(10,2);
    
    /* 将重命名字段数据更新到新增字段 */
    UPDATE table_name SET column_name = trim(column_name_tmp);
    
    /* 删除重命名字段 */
    ALTER TABLE table_name DROP COLUMN column_name_tmp;
    
    1. 如果数据量较大,比如这次遇到的情况5500万条数据,采用方法1更新字段数据要超过1小时。
      快捷操作就需要备份源表数据,修改字段名,从备份表插入数据。
    /* 备份数据,备份 table_name 表数据至 table_name_bak 表 */
    CREATE TABLE table_name_bak AS SELECT * FROM table_name;
    
    /* 清空目标表数据 */
    TRUNCATE TABLE table_name;
    
    /* 修改目标表字段类型 */
    ALTER TABLE table_name MODIFY(column_name NUMBER(10,2));
    
    --禁用索引
    ALTER INDEX INDEX_NAME UNUSABLE;
    
    /* 将备份表数据插入目标表 */
    INSERT INTO table_name
      (column_name1,
       column_name2,
       column_name3,
       ...)
      SELECT column_name1,
       column_name2,
       column_name3,
       ...
        FROM table_name_bak;
    
    /* 删除备份表 */
    DROP TABLE table_name_bak;
    
    --恢复索引
    ALTER INDEX INDEX_NAME REBUILD;
    
    --查看索引状态
    SELECT status FROM user_indexes WHERE index_name='INDEX_NAME';
    
    展开全文
  • 今天创建一个视图create view v_myview{id,time}asselect t.id as id,(casewhen to_date(t.time,'hh24:mi:ss')<TO_DATE ('12:00:00', 'hh24:mi:ss')then'AM'else'PM') as timefrom mytable t发现生成的 v_myview ...

    今天创建一个视图

    create view v_myview{

    id,

    time

    }

    as

    select t.id as id,

    (case

    when to_date(t.time,'hh24:mi:ss')<

    TO_DATE ('12:00:00', 'hh24:mi:ss')

    then

    'AM'

    else

    'PM'

    )  as time

    from mytable t

    发现生成的 v_myview 中 time 类型为char(2 byte)

    在项目中查看(用hibernate 的 query.list) 得到time字段只有‘A’或‘P’(应该为‘AM’或‘PM’)

    后将 创建 view 语句修改为

    create view v_myview{

    id,

    time

    }

    as

    select t.id as id,

    (case

    when to_date(t.time,'hh24:mi:ss')<

    TO_DATE ('12:00:00', 'hh24:mi:ss')

    then

    cast('AM' as varchar2(10))

    else

    cast('PM' as varchar2(10))

    )  as time

    from mytable t

    这下在v_myview 中    time字段类型 为varcha2(10)了

    在项目中查看(用hibernate 的 query.list) 终于为‘AM’或‘PM’了!

    展开全文
  • 需要获得一个视图中的字段名称、字段类型字段长度等信息,该如何编写sql语句。通过select*fromuser_views可以获得给定用户下所有的视图名称了,但是没找到如何获取视图结构的解决方法,求路过的大神解惑。已经解决...

    需要获得一个视图中的字段名称、字段类型、字段长度等信息,该如何编写sql语句。

    通过select * from user_views可以获得给定用户下所有的视图名称了,但是没找到如何获取视图结构的解决方法,求路过的大神解惑。

    已经解决了。

    all_tab_cols / all_tab_columns 查看所有用户下的表及视图结构

    user_tab_cols / user_tab_columns 查看当前用户下的表及视图结构

    user_col_comments 查看当前用户下表及视图中字段名称及字段注释

    all_col_comments  查看所以用户下表及视图中字段名称及字段注释

    开始的时候没仔细看,以为上面的视图中只有表结构信息,其实表及视图的结构信息都有。

    引用 2 楼 diyyong 的回复:

    查询其sql结构的语句:DIY_VIEW为视图名,需大写

    1

    SQL>select textfrom user_viewswhere view_name='DIY_VIEW';

    Sql中获取表结构(字段名称,类型,长度,说明)

    Sql中获取表结构(字段名称,类型,长度,说明) SELECT TableName = OBJECT_NAME(c.object_id), ColumnsName = c.name, Descript ...

    sqlserver查询所有表名、字段名、类型、长度和存储过程、视图的创建语句

    -- 获得存储过程创建语句 select o.xtype,o.name,cm.text from syscomments cm inner join sysobjects o on o.id=cm.i ...

    SQL 查询所有表名、字段名、类型、长度、存储过程、视图

    -- 获得存储过程创建语句 select o.xtype,o.name,cm.text from syscomments cm inner join sysobjects o on o.id=cm.i ...

    Sqlserver查询表结构信息-字段说明、类型、长度等信息

    Sqlserver 中查询表结构信息-字段说明.类型.长度等信息综合语法. SELECT 表名 = d.name,--case when a.colorder=1 then d.name else ' ...

    sp&lowbar;help 快速查看表结构、视图信息

    sp_helptext: 是MS SQL Server的一个系统存储过程,可以通过它来查看存储过程或者视图.函数源码 示例:sp_helptext viewName (viewName  即要查询的存 ...

    SQL Server查看表结构及视图,适合开发者使用,简单易用

    SELECT * FROM INFORMATION_SCHEMA.TABLES SELECT * FROM INFORMATION_SCHEMA.COLUMNS 查看执行结果

    Oracle获取表结构信息&colon;表名、是否视图、字段名、类型、长度、非空、主键

    select a.TABLE_NAME as "TableName", then 'V' else 'U'end as "TableType", a.COLUM ...

    oracle命令查看表结构及表索引

    --查看oracle数据库的单个表结构 select dbms_metadata.get_ddl('TABLE','TABLE_NAME') from dual; 括号里面有两个参数,第一个参数是我们 ...

    Oracle常用查看表结构命令

    获取表: select table_name from user_tables; //当前用户的表 select table_name from all_tables; //所有用户的表 select ...

    Oracle常用查看表结构命令&lpar;转&rpar;

    转自:http://www.cnblogs.com/qingsong-do/archive/2011/11/29/2267244.html 获取表: select table_name from us ...

    随机推荐

    UML 简单介绍

    Unified modeling Language - 统一建模语言

    HTML-002-弹出对话框

    日常的网页编程中,弹出对话框经常会以各种形式出现,例如:信息提示框.确认框.新增.修改信息等对话框均是其不同的表现形式. 此文以弹出信息新增对话框进行简要演示,经请参阅! 以下为其对应的结构目录: a ...

    Java-SSI框架学习

    框架简介: 相信大家对于mvc的三层架构已经灰常熟悉了,在这就不细讲了,个人感觉ssi的框架结构还是比较典型的mvc三层架构,还是比较容易上手的.关于这块的入门我想特别感谢下FrankHui童鞋,在他 ...

    微软Skype Linux客户端全新发布

    前两天,微软说要给“Linux 用户带来一个令人兴奋的新闻”,今天,这个新闻来了.它刚刚为 Linux 发布了一个新的 Skype 客户端. 此次发布,微软为 Linux 带来的 Skype 客户端与 ...

    ajax请求json中的数据

    在这里不多说,直接可以运行代码看效果: 代码:

    Linux服务器性能分析与调优

    一 linux服务器性能查看 1.1 cpu性能查看 1.查看物理cpu个数: cat /proc/cpuinfo |grep "physical id"|sort|uniq|wc ...

    洛谷&period;1110&period;&lbrack;ZJOI2007&rsqb;报表统计&lpar;Multiset Heap&rpar;

    题目链接 主要思路 /* 对于询问1,用堆代替multiset/Splay 对于询问2,multiset 1.注意哨兵元素 2.注意multiset中删除时是删除某元素的一个位置,而不是这个元素!这个 ...

    展开全文
  • 视图创建 create or replace view user.v_users as ...视图字段注解 comment on column user.v_users.id is '用户ID'; comment on column user.v_users.name is '用户姓名'; comment on column us
  • 脚本下载地址:oracle大表字段类型修改在线重定义脚本.txt最近在客户现场测试最大的24亿行记录的分区表,整个变更过程花费3个多小时,符合预期。网上相关的文章比较多,但都只是告诉我们怎么用,对于大表环境下的坑...
  • ORACLE视图修改

    千次阅读 2021-05-01 02:28:34
    ===============================================================================Oracle视图可以update吗?如果在网上做出这样一个问题调查,我想很多的网友朋友,都会不假思索的回答到,不行,视图是逻辑记录...
  • oracle表字段或是视图字段添加备注方法
  • dal = oracle() 表名 = "student" 视图名 = "view_student" 用户名 = "admin" sql = f''' select t.column_name, t.comments from all_col_comments t where t.owner = upper('{用户名}') and t.table_name =...
  • 转: [** ORACLE 当字段中有数据如何修改字段类型 ...问题: 创建视图的时候,因为表太多,里面一些字段类型不一样,PL/SQL报错...将CLOB字段修改成varchar2(4000)字段 第一步:把原字段换个名字,此条的sql是把C_00970
  • oracle 视图

    2021-05-05 00:44:52
    视图是一个抽象的概念,简单的说就是把表中的部分我们关注的内容保存一份出来到视图中,这样我们每次就不需要通过那么多字段的表去查询数据,只需要通过已经过滤出来的我们关系的数据中(视图中)取我们需要的数据。...
  • Oracle修改字段类型,把varchar2类型变成date类型 表已经有数据 原来表是这样的 create table export ( name varchar2(10), datetimes varchar2(50) ) 原来datetimes 时间的格式为 20090608121418 现在为方便按时时间...
  • 最近因为项目跟其他项目对接,两边采用的数据库不一样(我方采用的是sql server,而他们采用的是Oracle数据库),所以在获取数据时出现了一些问题。因为sql server 数据库的特性,在设置字符串的时候默认选择的时不设置...
  • 本节主要介绍了Oracle 查询表信息获取表字段及字段注释,需要的朋友可以参考下
  • oracle视图的几个重要内容

    千次阅读 2021-04-30 10:43:57
    视图是指计算机数据库中的视图,是一个...今天小编要讲的就是Oracle视图。视图的定义:视图是基于一个表或多个表或视图的逻辑表,本身不包含数据,通过它可以对表里面的数据进行查询和修改。视图基于的表称为基表。...
  • 本文主要向大家介绍了如何在Oracle中向视图中插入数据,通过具体的实例让大家了解,希望对大家学习Oracle有所帮助。插入视图的条件:1.如果视图是基于一个基础表产生的,那么这就称为非连接视图,所有的非连接视图都是...
  • Oracle 视图(View) 说明

    千次阅读 2021-05-03 07:57:19
    视图的定义视图(view),也称虚表,不占用物理空间,这个也是相对概念,因为视图本身的定义语句还是要存储在数据字典里的。视图只有逻辑定义。每次使用的时候,只是重新执行SQL.视图是从一个或多个实际表中获得的,这些...
  •  primary key(id) //id为主键,下面的方法把它设为自增字段  )  1、建立自增序列TEMP_TEST_IDADD,命名任意,从1开始,每次加1  CREATE SEQUENCE TEMP_TEST_IDADD INCREMENT BY 1 START WITH 1;  2、在表...
  • 视图v_user中额外增加一列type,给其取值1. create or replace view v_user as select *, '1' as type from user; 此次用到的函数: 1、decode: decode(value,a,val1,val2) 可以翻译成: if(value==...
  • oracle 查看表、视图 字段

    千次阅读 2019-12-17 15:48:31
    all_col_comments查看所有用户下 表及视图字段名称及字段注释 user_tab_cols/user_tab_columns查看当前用户下的表及视图 user_col_comments 查看当前用户下表及视图字段名称及字段注释 ...
  • 在mysql中alter命令可以修改字段类型,长度,名称或一些其它的参数,下面我来给大家介绍alter函数修改字段长度与类型的两个命令,希望文章来给各位带来帮助. mysql 修改字段长度 alter table news modify column title ...
  • 需要获得一个视图中的字段名称、字段类型字段长度等信息,该如何编写sql语句。通过select*fromuser_views可以获得给定用户下所有的视图名称了,但是没找到如何获取视图结构的解决方法,求路过的大神解惑。 已经...
  • oracle变更数据表字段类型 ,简单易懂方便快捷!
  • oracle视图

    千次阅读 2021-05-06 02:54:55
    手机评站网今天精心准备的是《oracle视图》,下面是详解!怎么在oracle中查询出所有的视图view?1、通过pl/sql,登录oracle数据库,2、敲入sql,可以查询本库的所有视图view,select * from all_views t,结果中owner...
  • Oracle视图基础详解与实例

    千次阅读 2021-05-01 05:43:31
    视图是基于一张表或多张表或另外一个视图的逻辑表。视图不同于表,视图本身不包含任何数据。表是实际独立存在的实体,是用于存储摘要:本篇笔记记录关于视图的一些认识、从概念、优缺点到应用以及注意事项。一:概念...
  • oracle--修改权限

    千次阅读 2021-05-06 05:26:28
    2、修改视图 create or replace view 视图名 as 查询语句; create or replace view 原视图名 as select * from 表名 where name like ‘%d%‘; 3、删除视图 drop view 视图名; 索引: 用于提高查询效率 , 表记录多...
  • oracle视图和索引

    2021-01-21 14:36:10
    什么是视图【View】?  (1)视图是一种虚表  (2)视图建立在已有表的基础上, 视图赖以建立的这些表称为基表  (3)向视图提供数据内容的语句为 SELECT 语句,可以将视图理解为存储起来的 SELECT 语句  ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 70,798
精华内容 28,319
关键字:

oracle视图修改字段类型

友情链接: speedphp_mqgx.rar