热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Oracle基本操作SQL

Oracle基本操作SQL1.创建表空间CREATETABLESPACETS_CNFOLDATAFILEG:ORACLEproduct10.1.0oradata
Oracle基本操作SQL  

1.创建表空间

      CREATE TABLESPACE TS_CNFOL

    DATAFILE 'G:/ORACLE/product/10.1.0/oradata/cnfol/TS_CNFOL.DAT' SIZE 10M REUSE

   AUTOEXTEND ON NEXT 500K MAXSIZE UNLIMITED;

2.创建用户
CREATE USER cnfol IDENTIFIED BY cnfol             --用户名及密码都为cnfol
DEFAULT TABLESPACE TS_CNFOL                     --该用户使用TS_CNFOL表空间
TEMPORARY TABLESPACE TEMP
QUOTA UNLIMITED ON TS_CNFOL;                 --可以使用这个表空间的所有配额

3.分配权限
GRANT CONNECT TO cnfol WITH ADMIN OPTION;   --cnfol可以把权限再分配给别人
GRANT RESOURCE TO cnfol;
GRANT CREATE ANY TABLE TO cnfol;
GRANT INSERT ANY TABLE TO cnfol;
GRANT SELECT ANY TABLE TO cnfol;
GRANT UPDATE ANY TABLE TO cnfol;
GRANT DELETE ANY TABLE TO cnfol;
GRANT ALTER ANY TABLE TO cnfol;
GRANT DROP ANY TABLE TO cnfol;
GRANT CREATE ANY INDEX TO cnfol;
GRANT DROP ANY INDEX TO cnfol;
GRANT EXECUTE ANY PROCEDURE TO cnfol;
GRANT CREATE ANY SEQUENCE TO cnfol;
GRANT DEBUG CONNECT SESSION TO cnfol;  
--可以单步调试函数或者存储过程

4.剥夺权限

    REVOKE DEBUG CONNECT SESSION FROM cnfol;

5.增、删、改表的列
ALTER TABLE TAB_NAME ADD(COL1 VARCHAR2(10) NOT NULL,COL2 NUMBER);
ALTER TABLE TAB_NAME MODIFY(COL1 VARCHAR2(100));
ALTER TABLE TAB_NAME DROP(COL2);

6.禁用、启用、删除约束
ALTER TABLE TAB_NAME DISABLE CONSTRAINT CK_TAB_STUDENT_ADDR;
ALTER TABLE TAB_NAME DISABLE PRIMARY KEY;
ALTER TABLE TAB_NAME ENABLE PRIMARY KEY;
ALTER TABLE TAB_NAME DROP CONSTRAINT CK_TAB_STUDENT_ADDR;

7.获得当前时间

    select sysdate from dual

 

8.表数据转移(把某张表的数据拷贝到另一张表中)

    insert into newtable(field1,field2) select field1,field2 from oldtable [where ...]

 

9.时间段操作

 

    select * from table1 where to_char(myDate,'yyyy-mm-dd') between '2007-01-01' and '2007-12-30'

 

10.解除用户锁定

    alter user wangwz account unlock

 

11.拷贝表结构

    create table tablename as (select * from oldtable where 1=1)要数据则用1=1,不要数据用1=2

 

12.添加字段

    alter table tablename add(col1 varchar2(10) not null,col2 number(4));

 

13.打印数据

    dbms_output.put_line('XXX');

14.删除表中所有记录

    truncate table tablename

15.SQL中含有单引号

    insert into tablename(username) values('i''m going');--插入一个单引号用两个单引号表示

16.求一张表中,符合相同条件的记录列表(在创建唯一约束之前,可用这个SQL来判断是否有违反你要建立的约束条件的记录)

    SELECT * FROM tabname a WHERE ROWID > ANY (SELECT ROWID FROM tabname b WHERE a.field1= b.field1 AND a.field2 = b.field2)

17.建立唯一约束

      ALTER TABLE tabname ADD CONSTRAINT uniquename UNIQUE (field1,field2)

18.建表SQL

      create table tablename
(
    sid number(6) primary key,
    ssex char(2),--存汉字就得两字节
    sbirthday date
)

19.创建序列

      create sequence seqname
minvalue 1
maxvalue 9999999999
start with 1--起始值
increment by 1--每次累加值
cache 20--缓存大小

      nocycle;--当序列达到最大值时不循环

20.创建函数

    CREATE OR REPLACE FUNCTION functionname RETURN NUMBER AS

        V_SEQ NUMBER;

    BEGIN

        SELECT seqname.NEXTVAL INTO V_SEQ FROM DUAL;

        RETURN V_SEQ;

    END;

21.创建存储过程

    CREATE OR REPLACE PROCEDURE proname is

        v_time varchar2(10);

    begin

        insert into tablename1(tblid,field1,field2,field3)

            select seqname.nextval,field1,field2,field3 from (select [位置1] field1,field2,field3 from where field1=1)

                where rownum<15

        commit;  

    end;

22.把表1的数据导到表2,但表2的主键由序列生成

    实现见上面的第19点和21点

    注:如果functionname.nextval要写在上面的位置1,由于functionname.nextval不能用在子查询中,所以可以做个函数,该函数就返回序列的当前值即可解决。处理流程参照上面的第19点到21点(ORA-02287:sequence number not allowed here)

23.给表加注释

    comment on table tablename is '注释';

24.给字段加注释

    comment on column tablename.field1 is '注释';

25.all的用法
    select * from tablename where 5>all(select tblid from tablename)
    上面这句SQL的效果是:当
select tblid from tablename所有的值都小于5,则搜索出tablename中所的数据
26.any的用法
    select * from tablename where 5>any(select tblid from tablename)
    上面这句SQL的效果是:当
select tblid from tablename作意一个值小于5,则搜索出tablename中所的数据
27.判断指定字符在当前编码方式下占的字节数
    select lengthb('中') from dual;
28.查询当前数据库采用的字符集
    select userenv('language') from dual
29.统计出表中某字段相同的记录列表
   
select field1,count(*) from tabname group by field1 having count(*)>1
30.字符串转日期
    select to_date('2007-01-01 14:00:11','yyyy-mm-dd hh24:mi:ss') from dual

推荐阅读
  • eclipse学习(第三章:ssh中的Hibernate)——11.Hibernate的缓存(2级缓存,get和load)
    本文介绍了eclipse学习中的第三章内容,主要讲解了ssh中的Hibernate的缓存,包括2级缓存和get方法、load方法的区别。文章还涉及了项目实践和相关知识点的讲解。 ... [详细]
  • 本文介绍了游标的使用方法,并以一个水果供应商数据库为例进行了说明。首先创建了一个名为fruits的表,包含了水果的id、供应商id、名称和价格等字段。然后使用游标查询了水果的名称和价格,并将结果输出。最后对游标进行了关闭操作。通过本文可以了解到游标在数据库操作中的应用。 ... [详细]
  • Imtryingtofigureoutawaytogeneratetorrentfilesfromabucket,usingtheAWSSDKforGo.我正 ... [详细]
  • vue使用
    关键词: ... [详细]
  • 电话号码的字母组合解题思路和代码示例
    本文介绍了力扣题目《电话号码的字母组合》的解题思路和代码示例。通过使用哈希表和递归求解的方法,可以将给定的电话号码转换为对应的字母组合。详细的解题思路和代码示例可以帮助读者更好地理解和实现该题目。 ... [详细]
  • 云原生边缘计算之KubeEdge简介及功能特点
    本文介绍了云原生边缘计算中的KubeEdge系统,该系统是一个开源系统,用于将容器化应用程序编排功能扩展到Edge的主机。它基于Kubernetes构建,并为网络应用程序提供基础架构支持。同时,KubeEdge具有离线模式、基于Kubernetes的节点、群集、应用程序和设备管理、资源优化等特点。此外,KubeEdge还支持跨平台工作,在私有、公共和混合云中都可以运行。同时,KubeEdge还提供数据管理和数据分析管道引擎的支持。最后,本文还介绍了KubeEdge系统生成证书的方法。 ... [详细]
  • 本文介绍了设计师伊振华受邀参与沈阳市智慧城市运行管理中心项目的整体设计,并以数字赋能和创新驱动高质量发展的理念,建设了集成、智慧、高效的一体化城市综合管理平台,促进了城市的数字化转型。该中心被称为当代城市的智能心脏,为沈阳市的智慧城市建设做出了重要贡献。 ... [详细]
  • 本文介绍了数据库的存储结构及其重要性,强调了关系数据库范例中将逻辑存储与物理存储分开的必要性。通过逻辑结构和物理结构的分离,可以实现对物理存储的重新组织和数据库的迁移,而应用程序不会察觉到任何更改。文章还展示了Oracle数据库的逻辑结构和物理结构,并介绍了表空间的概念和作用。 ... [详细]
  • 本文介绍了Redis的基础数据结构string的应用场景,并以面试的形式进行问答讲解,帮助读者更好地理解和应用Redis。同时,描述了一位面试者的心理状态和面试官的行为。 ... [详细]
  • 本文介绍了如何在给定的有序字符序列中插入新字符,并保持序列的有序性。通过示例代码演示了插入过程,以及插入后的字符序列。 ... [详细]
  • Java String与StringBuffer的区别及其应用场景
    本文主要介绍了Java中String和StringBuffer的区别,String是不可变的,而StringBuffer是可变的。StringBuffer在进行字符串处理时不生成新的对象,内存使用上要优于String类。因此,在需要频繁对字符串进行修改的情况下,使用StringBuffer更加适合。同时,文章还介绍了String和StringBuffer的应用场景。 ... [详细]
  • sklearn数据集库中的常用数据集类型介绍
    本文介绍了sklearn数据集库中常用的数据集类型,包括玩具数据集和样本生成器。其中详细介绍了波士顿房价数据集,包含了波士顿506处房屋的13种不同特征以及房屋价格,适用于回归任务。 ... [详细]
  • Python正则表达式学习记录及常用方法
    本文记录了学习Python正则表达式的过程,介绍了re模块的常用方法re.search,并解释了rawstring的作用。正则表达式是一种方便检查字符串匹配模式的工具,通过本文的学习可以掌握Python中使用正则表达式的基本方法。 ... [详细]
  • CF:3D City Model(小思维)问题解析和代码实现
    本文通过解析CF:3D City Model问题,介绍了问题的背景和要求,并给出了相应的代码实现。该问题涉及到在一个矩形的网格上建造城市的情景,每个网格单元可以作为建筑的基础,建筑由多个立方体叠加而成。文章详细讲解了问题的解决思路,并给出了相应的代码实现供读者参考。 ... [详细]
  • 高质量SQL书写的30条建议
    本文提供了30条关于优化SQL的建议,包括避免使用select *,使用具体字段,以及使用limit 1等。这些建议是基于实际开发经验总结出来的,旨在帮助读者优化SQL查询。 ... [详细]
author-avatar
卸妆乳123
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有