精华内容
下载资源
问答
  • Oracle数据库表修改操作

    千次阅读 2018-06-11 15:29:22
    一:Oracle修改字段名、字段数据类型语句:alter table tableName rename column oldCName to newCName; -- 修改字段名alter table tableName modify (cloumnName 数据类型); -- 修改数据类型例如:1、创建表: ...

    一:Oracle修改字段名、字段数据类型

    语句:
    alter table tableName rename column oldCName to newCName; -- 修改字段名

    alter table tableName modify (cloumnName 数据类型); -- 修改数据类型

    例如:
    1、创建表:
      CREATE TABLE Student(
        id varchar2(32) primary key,
        name varchar2(8) not null,
        age number
      );
    2、修改字段名:
      alter table Student rename name to StuName;
    3、修改数据类型:
      alter table Student modify (id
    varchar2(64));


    问题

    数据库中某表字段为number类型,需要修改成varchar类型。

    修改步骤

    --备份表
    --create table xxtable_copy20171215 as select * from xxtable;
    --复制表结构成新表
    --create table xxtable_new as select * from xxtable where 1=2;
    --改变新表的数据结构
    --alter table xxtable_new modify (CANCELRENO varchar(25));
    
    --导入原数据
    --insert into xxtable_new select * from xxtable_copy20171215;
    --插入新数据
    --insert into xxtable_new (...) values (...);
    
    --将原表更名
    --alter table xxtable rename to xxtable_bak20171215;
    --将新表更名成原表名
    --alter table xxtable_new rename to xxtable;
    
    --删除第一次备份的表
    --drop table xxtable_copy20171215;


    二:Oracle中给表添加主键、外键


    1、创建表的同时创建主键约束

     

    (1)无命名 create table student ( studentid int primary key not null, studentname varchar(8), age int);

     

    (2)有命名 create table students ( studentid int , studentname varchar(8), age int, constraint yy primary key(studentid));

     

    2、删除表中已有的主键约束

     

    (1)无命名可用 SELECT * from user_cons_columns; 查找表中主键名称得student表中的主键名为SYS_C002715 alter table student drop constraint SYS_C002715;

     

    (2)有命名 alter table students drop constraint yy;

     

    3、向表中添加主键约束 alter table student add constraint pk_student primary key(studentid);

     

    4、向表中添加外键约束 ALTER TABLE table_A ADD CONSTRAINT FK_name FOREIGN KEY(id) REFERENCES table_B(id);


    三:自增量 sequence

    -- Create sequence 
    create sequence S_SNOWBALLING
    minvalue 1
    maxvalue 9999999999999999999999999999
    start with 3397
    increment by 1
    cache 20;
    
    
    select S_snowballing.nextval from   dual
    

    四:清空表

    truncate table T_SBL_RollBack_PROJECTINFO


    五:包创建和调用

    创建包
    create or replace package pck_snowballing is
      --获取数据
      type SnowballingList is record(
        guid         char(36),
        loanGuid     char(36),
        custName     nvarchar2(50),            --客户姓名
        Idcard       nvarchar2(50),            --客户身份证
        bankcardNo       nvarchar2(50),            --客户银行卡号
        BankMobile   nvarchar2(50),            --客户银行卡预留手机号
        IsConversbl  number                 --是否已经转换了数据,1:是,0:否
        );
      type sblTable is table of SnowballingList;
      function GetSnowballingList(i_custName nvarchar2) return sblTable
        PIPELINED;
    end pck_snowballing;
    
    
    
    create or replace package body pck_snowballing is
    
    function GetSnowballingList(i_custName nvarchar2) return sblTable
      PIPELINED is
      Results SnowballingList;
      sys_cur_contract sys_refcursor;
      begin
        open sys_cur_contract for
               select (
               case when t3.guid is null then t2.guid else t3.guid end) guid
               ,t1.loanguid
               ,t2.custname
               ,t2.idcard
               ,t3.bankcardno
               ,t3.bankmobile
                ,(case when t3.guid is null then 0 else 1 end)  as IsConversbl from t_loanrecord t1
                join t_custinfo t2
                on t1.custguid=t2.guid
                left join t_sbl_Userinfo t3
                on t1.loanguid=t3.loanguid
                where t1.status!=9
                order by t1.createdate desc;
        begin
             loop
               fetch sys_cur_contract
               into  Results ;
               exit when sys_cur_contract%notfound;
               pipe row(Results);
             end loop;
        end;
      return;
      end GetSnowballingList;
    end pck_snowballing;
    
    调用包
    select * from table(pck_snowballing.GetSnowballingList('')) 
    
    

    展开全文
  • oracle基本操作

    千次阅读 2016-10-16 15:51:51
    今天来复习一下oracle的基本操作,后来在项目中也经常使用oracle,但是只是部分,今天复习一下oracle常用的基础操作

    今天来复习一下oracle的基本操作,后来在项目中也经常使用oracle,但是只是部分,今天复习一下学了的oracle常用的基础操作。

    • 登录oracle
    sqlplus/as sysdba;
    • 启动oracle
    startup;
    • 停止oracle
    shutdown;
    • 创建新用户
    create user username identified by password;
    • 授予用户权限
    grant connect,resource to username;
    • 授予用户具体的权限
    grant create session,create table;unlimited tablespace to username;
    • 连接用户
    conn username/password;
    • 创建表空间
    create tablespace tablespacename datafile '路径/test.dbf' size 50m; 
    • 给用户指定默认表空间
    alter user username default tablespace tablespacename;
    • 查询表空间
    select *from user_tablespaces;
    • 删除表数据
    drop table tablename;
    • 复制空表结构
    create table newtable as select *from oldtable where 1=2;
    • 复制表(含记录)
    create table newtable as select *from oldtable;
    • 修改约束名称
    alter table tablename rename constraint oldname to newname;
    • 删除约束
    alter table tablename drop constraint cname;
    • 停止约束
    alter table tablename modify constraint cname disable;
    • 启用约束
    alter table tablename modify constraint cname enable validate;
    • 新增约束
    alter table tablename add constraint constraintname foreigh(org_id) key (外键)references ref_table(ord_id);
    • 更改字段数据类型
    alter table tablename modify(org_id varchar2(50 byte));
    • 更改字段数据长度
    alter table tablename modify(org_id varchar2(80 byte));
    • 修改表的列名
    alter table tablename rename column xx to yy;
    • 创建表(举例)
    create table tablename(
    sid number(10) primary key,
    sname varchar2(100) not null, pwd varchar2(100) not null);
    --属性之间逗号隔开,最后一个不加逗号
    • 插入一条数据
    insert into tablename values(sequencename.nextval,?,?);
    • 创建一条序列
    create sequence seq_tablename_tid start with 1001;
    • 修改表中一条数据
    update tablename set tid=?,sname=?,pwd=? where sid=?
    • 修改数据时要拼接数据
    update tablename set sid=? where tid in("+tid+");

    对应的java中Dao层语句:

    String sql=null;
    if(tid.constains(",") && !tid.constains(" or ")){
    sql="update tablename set sid=? where tid in("+tid+")"; return  .......}else{
    sql="update tablename set sid=? where tid=?"; return ........}
    • 级联查询表数据(在做分页时用的sql语句)
    select * from (select a.*,rownum rn from(select sid from tablename where tid=? order by sid)a where rownum<=?)where rn>?
    • 查询总数
    select count(sid) as tatal from tablename where条件
    展开全文
  • Oracle操作语句

    2018-06-14 11:42:28
    详细讲述了Oracle操作语句,包括创建表,修改表,对表内数据的修改。主外键等
  • Oracle用户名修改是个不...我们的Oracle管理工作中经常涉及到更改Oracle用户属性、密码之类的常用操作;但在某些应用场景下,会遇到Oracle用户名更改的需求,如何解决?下面通过四个步骤实现Oracle用户名的修改。 一、

    Oracle用户名修改是个不太常见的需求,但对很对入门者而言还是一个需要掌握的知识,这里通过四个简单步骤实现Oracle用户名的更改和替换。

    AD:


      我们的Oracle管理工作中经常涉及到更改Oracle用户属性、密码之类的常用操作;但在某些应用场景下,会遇到Oracle用户名更改的需求,如何解决?下面通过四个步骤实现Oracle用户名的修改。

      一、查询更改Oracle用户名

         
      1. SQL> select user#,name,password from userwhere name ='TICKETS';  
      2.  
      3.      USERNAME                           PASSWORD 
      4. ---------- ------------------------------ ------------------------------  
      5.         78 TICKETS                        21EDA78F89D6FACD 

      二、更改用户名

         
      1. SQL> update  userset name='TICKETS_BAK' where user#=78;  
      2.  
      3. 1 row updated.  
      4.  
      5. SQL> commit;  
      6.  
      7. Commit complete. 

      三、创建同样的Oracle用户名

         
      1. SQL> create user tickets identified by "123456" 
      2.   2  default tablespace yytickets  
      3.   3  temporary tablespace temp;  
      4. create user tickets identified by "123456" 
      5.             *  
      6. ERROR at line 1:  
      7. ORA-01920: user name 'TICKETS' conflicts with another user or role name 

      这时系统会提示“用户名冲突”,运行下面的SQL语句

         
      1. SQL> alter system checkpoint;    ----强制写入数据文件  
      2.  
      3. System altered.  
      4.  
      5. SQL> alter system flush shared_pool;  ----清楚缓存数据字典信息, ----强制oracle读实际数据(即更改后的数据)  
      6.  
      7. System altered. 

      四、创建相同的用户名

         
      1. SQL> create user tickets identified by "123456" 
      2.   2  default tablespace yytickets  
      3.   3  temporary tablespace temp;  
      4.  
      5. User created.  
      6.  
      7. SQL> grant connect,resource to tickets;  
      8.  
      9. Grant succeeded.  
      10.  
      11. SQL> commit;  
      12.  
      13. Commit complete. 

      这样基本完成Oracle用户名的查找、更改、替换、复制等操作,需要注意的是用户名冲突的排查和解决,以防发生后患。

      展开全文
    • MFC对Oracle数据库操作

      2018-12-21 10:16:40
      一个类是用来连接和操作数据库的,下载之后可以将你自己的Oracle配置参数写入初始化文件“OracleDemo\OracleDemo\WXZJ.ini”中,就可以连接了,其中的函数是向表中插入数据,你可以根据你的表格进行修改。...
    • 在本篇文章里小编给大家整理的是一篇关于Oracle数据库服务器修改操作系统时间的注意事项详解,需要的朋友们可以参考下。
    • Oracle操作-修改字体

      千次阅读 2013-04-15 13:15:35
      Oracle修改界面字体 第一步: 第二步 查看及修改表名 第一步:进入到用户下面,找到当前用户 :找到tables,查看表名 :进入到Columns中查看字段名,进行相关的修改

      Oracle修改界面字体

      第一步:

      第二步

      查看及修改表名

      第一步:进入到用户下面,找到当前用户

      :找到tables,查看表名

      :进入到Columns中查看字段名,进行相关的修改

       

      展开全文
    • 1、关闭数据库   SQL> shutdown immediate Database closed. Database dismounted. ORACLE instance shut down. 2、退出SQLPLUS SQL> exit Disconne
    • ORACLE_SID参数,这个参数是操作系统中用到的,它是描述我们要默认连接的数据库实例,对于一个机器上有多个实例的情况下,要修改后才能通过 conn / as sysdba连接,因为这里用到了默认的实例名。 简而言之,打个...
    • 查询oracle数据库操作记录

      万次阅读 2018-02-02 11:36:07
      1、查询oracle修改记录 select t.SQL_TEXT, t.FIRST_LOAD_TIME from v$sqlarea t where t.FIRST_LOAD_TIME like '2010-06-30%' order by t.FIRST_LOAD_TIME desc2、查看oracle会话 select * from v
    • Oracle数据库操作命令

      千次阅读 多人点赞 2020-05-02 21:26:02
          首先,不管是Oracle、mySQL,还是其他数据库,一般都是使用的标准的SQL语言(结构化查询语言)。所以只要掌握了SQL语句,在其他数据库中大都是通用的。     但是,每个数据库都有自己的特性。这就需要...
    • C# 链接Oracle数据库操作类 SqlHelper.cs,.NET3.0以上即可使用,涵盖了oracle数据库的增删改查操作,并可调用存储过程,因是源码,可根据自己实际需要再修改,灵活性较大
    • Oracle xml简单操作

      2013-07-30 14:42:01
      Oracle 简单操作xml 的例子,从网上摘取的,以便日后学习参考
    • Oracle数据库迁移操作指南
    • 以前简单的用过Oracle数据库,都是用控制台,通过命令操作的,然后最近学校增加了一门新的课程,又学了一招:通过浏览器访问操作Oracle数据库。  1.打开浏览器;  2.在地址栏输入“localhost:8080/apex”,回车;...
    • Oracle实用操作(三)oracle 表名长度的限制 1、在新建oracle表的时候,经过查找相关资料oracle表名的最大长度是30,我加上了0331正好是30,多加2为就32了,当然报错了。 2、同时有网友说看看desc user_tables,看...
    • oracle命令行操作命令

      千次阅读 2017-07-28 17:33:39
      sqlplus中查看Oracle中有哪些已经创建好的用户 select username from dba_users 在Oracle中查看所有的表: select * from tab/dba_tables/dba_objects/cat; 看用户建立的表 : select table_name from user_...
    • oracle 12c 数据库常用操作语句,欢迎带走,如果可以 少给一点也行
    • Oracle ASM 操作注意事项

      千次阅读 2011-12-13 11:54:31
      1.alter diskgroup dg_test add/drop disk 为异步操作ORACLE后台会进行REBALANCE操作  2.ASMLIB 发现标记磁盘在多路径情况下默认只发现第一个设备,这个设备很大可能不是多路径设备,而是正常的系统设备,...
    • UNIX windows LINUX,不同操作系统修改oracle的默认日期格式
    • Oracle 数据库服务器修改操作系统时间的注意事项
    • Oracle操作系统身份认证

      千次阅读 2019-01-08 03:14:43
      Oracle操作系统身份认证 oraclelogin数据库远程登录authenticationos sqlnet.authentication_services=(NTS),在$ORACLE_HOME/network/admin/sqlnet.ora中 NTS特指的是windows系统,或者设为all,这两种情况都...
    • Navicat for Oracle 连接 Oracle 11G 操作流程
    • Oracle更改口令和用户名

      千次阅读 2019-05-06 18:17:52
      以Windows操作系统为例 1、打开命令提示符,输入命令sqlplus /nolog,进入oracle控制台,并输入conn /as sysdba;以DBA角色进入。 2、连接成功后,输入select username from dba_users;查看用户列表。 3、修改用户...
    • python、cx_Oracle第三方模块、orcale数据库 python-cx_oracle报错 python-cx_oracle报错"DatabaseError: DPI-1047: 64-bit Oracle Client library cannot be loaded: " 解决办法:...
    • linux手工创建Oracle实例操作说明

      千次阅读 2017-05-26 16:19:43
      第一步 设置环境变量,可加在.bash_profile文件中 export ORACLE_SID=orcl 第二步 创建需要的目录: [oracle@localhost oracle]$ mkdir -p $ORACLE_...[oracle@localhost oracle]$ mkdir -p $ORACLE_BASE/admin/o
    • oracle 修改表空间存储路径

      千次阅读 2019-05-16 16:24:21
      windows操作类似,更改为Windows下路径,一般修改users(如scott用户),system的dbf不修改 [root@yoon ~]# more /etc/oracle-releaseOracle Linux Server release 5.7   Oracle Database 11g Enterprise ...
    • Oracle触发器之表新增/修改的触发操作 Oracle创建触发器,若是本地触发,加数据库名即可;如果是远程服务器,做一个db_link操作即可。 教学代码 建表: create table User_Info ( ID INTEGER not null, ...

    空空如也

    空空如也

    1 2 3 4 5 ... 20
    收藏数 363,037
    精华内容 145,214
    热门标签
    关键字:

    oracle修改操作