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

oracle基础之sql基础知识

阅读更多

1. sql(Structured Query Language)是关系型数据库的基本操作语言。

        包括数据库查询(Data Query),数据操纵(Data Manipulation),数据定义(Data Definition)和数据控制(Data Control)。
         数据库查询(Data Query):用于检索数据,也就是select语句。
         数据操纵(Data Manipulation Language DML):用于改变数据,包括insert,update和delete。DML不会自动提交事物。
         事物控制语句(Transactional Control Language TCL):用于维护数据的一致性,包括commit, rollback和savepoint;其中savepoint语句用于设置保存点,以恢复部分数据的更改。
         数据定义(Data Definition Language DDL):用于建立,修改和删除数据对象。create,alter和 drop;DDL语句会自动提交事物。
         数据控制(Data Control Language DCL):用于分配和收回权限,包括grant和revoke。DCL也会自动提交事物。


2.sql语句规则
  sql语句的关键子不区分大小写;对象名和列名不区分大小写。


3.pl/sql 是oracle在标准sql基础上的扩展,允许定义变量和常量,允许过程语言结构(条件分支和循环)允许异常处理。

 

4.distinct 作用是要查询的所有数据,而不仅仅是紧跟它后面的那列。
      selecte distinct a,b from table; --返回数据的条件是a相等且b必须相等distinct 可否放在列的中间那?


5.NVL(expr1,expr2)
       如果expr1是null,则返回expr2,否则返回expr1,expr1和expr2可以是任意数据类型,但两者必须匹配。
   NVL2(expr1,expr2,expr3)
       如果expr1不是null则返回expr2,否则返回expr3。expr1可以是任意数据类型,而expr2和expr2可以是除LONG之外的其它类型。但是三者数据类型必须一致。


6.插入数据
  不使用列插入单行数据:必须提供所有列的数据,数据的顺序与列的顺序一致。
  insert into emp values(1,'gaci','man');
  使用列插入单行数据:对于未出现的列,默认值为null

  insert into emp(id,name,sex) values(1,'gaci','man');

  使用只查询插入数据:--将表emp2的数据全部复制到emp1里面
  insert into emp1(id,name,sex) select id,name,sex from emp2;
  insert /*+APPEND*/into emp1(id,name,sex) select id,name,sex from emp2;
  /*+APPEND*/表示直接装载方式,主要用于操作大批量数据

  delete删除表中的所有数据时,不会释放表所占用的空间;但是可以回退(roll back)
  truncate不仅删除表的数据,而其释放其空间;不可以回退。
  

7. 事务控制语句
      事务用于确保数据库的一致性,有一组相关的DML语句组成。事务确保该组DML语句所执行的操作要么全部执行成功,要么全部取消。
      事务主要有insert,update,delete和selete ... for update 组成,当执行这些语句时事务开始;当执行commit货rollback的时候事务结束。
  
  
   当执行事务操作时,oracle会在被操作的表上家上锁,以防止其它用户改变表结构;同时会在被操作的行上加上锁,以防止其它事务在相应的行上执行DML操作。
 
   当执行commit语句之后,会确认事务变化(更新数据等), 结束事务,删除保存点,释放锁。
   当执行DDl语句时会自动提交事物,create , alter,drop 等。
   当执行DCL语句Grant,revoke等
   当退化出sql/plus,pl/sql等
  
回退事务
     保存点(savepoint)--是事务中的一点,用于取消部分事务。
     设置保存点:savepoint a;
     回退保存点:rollback to a ;  -- 会取消a和面的操作
     取消全部事务:rollback;
 

只读事务(会话级别的) set transaction read only;
    只允许执行查询操作,不允许执行任何DML操作。尽管其它用户会话可能提交新事务,但只读事务不会取得新的数据变化,可以确保用户取得特定时间点的数据信息。

顺序事务  set transaction isolation level serializable;
     只读事务可以使用户取得特定时间点的数据信息,但是该用户在只读事务期间不能执行dml操作。而顺序事务则可以这样。
 
   数据分组
   数据分组通过使用group by字句,分组函数和having字句共同实现。group by指定要分组的列,分组函数用于统计结果,having用户限制分组显示结果。
  
   分组函数
   只能出现在选择列表,order by 和 having字句中,不能出现在where和group by字句中
   除了count(*)函数外,其它分组函数都会忽略null行
   当执行select语句时,如果选择列表同时包括列,表达式和分组函数,那么这些列和表达式必须出现在group by字句中。
  

脏数据---未提交事务

 

--查询带有下划线的名字
 select name from emp where name like '%a_%' ESCAPE 'a' -- a为转义字符

分享到:
评论

相关推荐

    Oracle 11g SQL和PL SQL从入门到精通 pdf格式电子书 下载(一)

    通过学习本书,读者不仅可以掌握oracle常用工具oracle universal installer、net comfiguration assistant、sql developer、sql*plus的作用及使用方法,而且可以掌握sql语句和pl/sql的各种基础知识和高级特征(记录...

    Oracle-SQL.rar_oracle_oracle sql_sql

    在“Oracle-SQL.rar”这个压缩包中,包含了一份名为“Oracle SQL.ppt”的文件,这可能是一个PowerPoint演示文稿,用于详细讲解Oracle数据库的基础知识和SQL语言的使用。下面,我们将深入探讨一些Oracle SQL的基础...

    Oracle Sql基础(beginning oracle sql中文版)

    让我们深入探讨Oracle SQL的基础知识。 一、SQL简介 SQL(结构化查询语言)是用于管理关系数据库的标准编程语言,包括数据查询、数据更新、数据插入和数据删除等操作。Oracle SQL是Oracle公司对SQL的实现,它增加了...

    oracle基础知识入门

    对于初学者来说,掌握Oracle基础知识是进入数据库领域的第一步。本文将深入浅出地介绍Oracle数据库的一些核心概念和基本操作,帮助你快速入门。 一、Oracle数据库系统概述 Oracle数据库是由美国Oracle公司开发的,...

    OracleSQL基础知识论述.pptx

    Oracle SQL 基础知识论述 Oracle SQL 是一种基于关系型数据库管理系统(RDBMS)的查询语言,由 IBM Corporation, Inc. 开发,用于实现 Dr. E. F. Codd 的关系模型。1979 年,Relational Software, Inc.(现在的 ...

    Oracle 11g SQL和PL SQL从入门到精通 pdf格式电子书 下载(二)

    通过学习本书,读者不仅可以掌握oracle常用工具oracle universal installer、net comfiguration assistant、sql developer、sql*plus的作用及使用方法,而且可以掌握sql语句和pl/sql的各种基础知识和高级特征(记录...

    Oracle 10g SQL 基础培训

    Oracle 10g SQL基础培训是数据库管理员和开发人员学习SQL语言的重要课程,特别是对于那些在企业级环境中处理数据的人员。Oracle 10g是Oracle数据库的一个版本,它提供了强大的功能和性能优化,使得SQL查询更为高效。...

    oracle pl/sql从入门到精通 配套源代码

    首先,让我们探讨Oracle PL/SQL的基础知识。PL/SQL是Oracle数据库的内置编程语言,由块构成,包括声明部分、执行部分和异常处理部分。块可以是匿名块(即直接在SQL*Plus或其他工具中编写的一次性执行的代码),也...

    Oracle SQL(SQL for Oracle)

    在Oracle SQL中,有以下几个关键知识点: 1. **数据类型**:Oracle支持多种数据类型,包括数值型(如NUMBER)、字符串型(如VARCHAR2和CHAR)、日期/时间型(如DATE)、二进制大对象(BLOB)等。理解这些数据类型...

    oracle基础知识回顾与练习.zip

    本资料“oracle基础知识回顾与练习.zip”是针对Oracle数据库的基础知识进行整理,采用纯SQL语句的形式,适合初学者及需要巩固基础的用户进行学习和实践。 1. SQL基础 SQL(Structured Query Language)是用于管理...

    ORACLE PL/SQL从入门到精通

    ORACLE PL/SQL是从入门到精通的专业知识,涵盖了数据库开发与管理的多个方面,包括触发器、过程、函数、软件包、异常处理、游标、循环、分支、变量使用、数据库安装等关键知识点。 触发器是数据库中用来保证数据...

    oracle数据库sql基础

    本篇将深入讲解Oracle SQL的基础知识,包括基本的SQL语句、单行函数、子查询、多表查询以及组函数。 **一、基本的SQL SELECT语句** SQL SELECT语句用于从数据库中检索数据。基本语法如下: ```sql SELECT column1, ...

    Oracle 11g SQL和PL SQL从入门到精通〖送源代码〗

    通过学习本书,读者不仅可以掌握Oracle常用工具Oracle Universal Installer、Net Comfiguration Assistant、SQL Developer、SQL*Plus的作用及使用方法,而且可以掌握SQL语句和PL/SQL的各种基础知识和高级特征(记录...

    Learning Oracle PL_SQL

    但《学习Oracle PL/SQL》一书提供了必要的指引和指导,以易于管理的篇幅覆盖了所有必需的基础知识,帮助读者迅速掌握语言的精髓。 ### 书籍涵盖的主题 - **PL/SQL简介**:解释什么是PL/SQL,为什么选择使用它,...

    Oracle PL_SQL Language Pocket Reference, 5th Edition.2015.pdf

    - **Steven Feuerstein**:世界领先的Oracle PL/SQL语言专家之一,同时也是《Oracle PL/SQL 最佳实践》一书的作者。 - **Bill Pribyl**:畅销书《Oracle PL/SQL 编程》的合著者,同时他也是一名教师和软件顾问。 - *...

    oracle 数据库 scott.sql 范例表

    在本文中,我们将深入探讨Oracle数据库的基础知识,以及如何使用"SCOTT"用户和"scott.sql"文件。 1. Oracle数据库基础: Oracle数据库是一个关系型数据库管理系统(RDBMS),由Oracle公司开发。它支持多种数据类型...

    pl/sql试题,oracle基础知识

    Oracle数据库的基础知识和PL/SQL是数据库管理和开发的重要组成部分,它们涉及到数据存储、事务处理、存储过程和触发器等多个方面。以下是对这些知识点的详细解释: 1. 数据文件在Oracle数据库中的关联:一个数据...

    精通Oracle 10g SQL和PL SQL.zip

    Oracle 10g SQL与PL/SQL是数据库管理和开发领域中的核心技术,对于任何希望深入理解Oracle数据库系统的专业人士来说,这些都是必须掌握的知识。本资源“精通Oracle 10g SQL和PL SQL.zip”提供了全面的学习指南,帮助...

    oracle基础知识考试题_答案.zip

    这个"oracle基础知识考试题_答案.zip"压缩包文件包含了关于Oracle数据库的基础知识学习材料,特别是针对初学者或者准备Oracle相关资格考试的人员。 首先,Oracle数据库的核心概念包括SQL(结构化查询语言)的使用,...

    oracle数据库基础知识

    这是我学习过程中整理的oracle数据库基础知识,里面包含了DML、DDL等相关语句。还解释了什么情况下该用什么样的SQL。包含了很多基础知识。欢迎大家收藏。

Global site tag (gtag.js) - Google Analytics