1.了解SQL的种类

(1)DDL 数据定义语言:定义数据库中数据要如何存储的,包括对数据库对象的创建(create)修改(alter)删除(drop)的操作,这些对象主要有数据库,数据表,视图,索引等。

(2)DML 数据操作语言:对数据库表进行的操作,包括对数据库表进行增加(insert)删除(delete)修改(update)的操作。

 (3)DQL 数据查询语言:对数据库表进行的查询操作,既可以查询(select)一个也可以查询多个表,并且可以按不同的条件进行进行检索数据。

(4)DCL 数据控制语言:对数据库中的对象(grant)权限进行设置和取消操作。

2.Oracle 11g支持的数据类型

(1)一共23种数据类型VARCHAR2, NUMBER, DATE, CHAR, FLOAT, INTEGER ......

(2)常用数据类型 ①字符型:VARCHAR2, NVARCHAR2, CHAR, NCHAR, LONG

          ②数字型: NUMBER, FLOAT

          ③日期型: DATE, TIMESTAMP

3.数据定义语言(DDL)

(1)Create创建表:CREATE  TABLE  table_name{

          column_name datatype [null | not null]

          column_name datatype [null | not null]

          ...

          [constraint]

         };

(2) Alter 修改表: ALTER TABLE table_name

         ADD column_name | MODIFY column_name | DROP COLUMN column_name;

(3) Drop删除表:DROP TABLE table_name;

(4)约束的使用:①主键约束:创建表时设置 PRIMARY KEY (cloumn_name)

                为已有表添加 ALTER TABLE table_name

                     ADD  CONSTRAINTS  constraint_name PRIMARY KEY (cloumn_name)

         ②外键约束:创建表时设置 CONSTRAINT constraint_name FOREIGN KEY (column_name)

                     REFERENCES table_name (column_name)/*要引用的表名(列名)*/

                     ON DELETE CASCADE;/*设置级联删除*/

               为已有表添加  ALTER TABLE table_name

                     ADD CONSTRAINT constraint_name FOREIGN KEY (column_name)

                     REFERENCES table_name (column_name)/*要引用的表名(列名)*/

                     ON DELETE CASCADE;/*设置级联删除*/

        ③CHECK约束:创建表时设置 CONSTRAINT constraint_name CHECK(column_name.condition)

               为已有表添加  ALTER TABLE table_name

                      ADD CONSTRAINT constraint_name CHECK(column_name.condition)

        ④UNIQUE约束:创建表时设置 CONSTRAINT constraint_name FOREIGN KEY (column_name)

               为已有表添加  ALTER TABLE table_name

                     CONSTRAINT constraint_name UNIQUE(column_name)

        ⑤NOT NULL约束:创建表时设置 NOT NULL

                为已有表添加 ALTER TABLE table_name MODIFY column NOT NULL

4.数据操作语言(DML)

(1)添加数据INSERT 向表中添加数据:INSERT INTO table_name(column_name1,column_name2, ...) VALUES(data1, data2, ...)

通过其他表添加:INSERT INTO table_name(column_name1,column_name2, ...) select column_name1, column_name2,                     ...FROM table_name2

                    CREATE TABLE table_name AS SELECT column_name1,column_name2,...FROM source_table;

(2) 修改数据UPDATE 修改表中字段 UPDATE table_name SET column_name1=data1 ,column_name2=data2,...[WHERE condition];

(3) 删除数据DELETE DELETE FROM table_name[WHERE condition]

(4)其他数据操作语句:TRUNCATE TABLE table_name(删除操作比delete语句删除更快一些)

             MERGE 对数据进行增加修改的操作MERGE [into] table_name1 USING table_name2

             ON(condition) WHEN MATCHED THEN~~~~/*如果条件匹配执行的语句*/

WHEN  NOT MATCHED THEN ~~~~ /*如果条件不匹配执行的语句*/

5. 数据查询语句(DQL)(转下)

6. 数据控制语句(DCL)(转下)

...........

Oracle的SQL基础的更多相关文章

  1. oracle PL/SQL基础编程

    PL/SQL(Procedural Language/SQL)是oracle中引入的一种过程化编程语言 PLS-00103:出现符号"declare"在需要下列之一时 符号&quo ...

  2. 二十、oracle pl/sql基础

    一.pl/sql developer开发工具pl/sql developer是用于开发pl/sql块的集成开发环境(ide),它是一个独立的产品,而不是oracle的一个附带品. 二.pl/sql介绍 ...

  3. oracle pl/sql 基础

    一.pl/sql developer开发工具pl/sql developer是用于开发pl/sql块的集成开发环境(ide),它是一个独立的产品,而不是oracle的一个附带品. 二.pl/sql介绍 ...

  4. Oracle pl/sql 基础入门语法

    PL/SQL是一种块结构的语言,这意味着PL/SQL程序被划分和编写代码的逻辑块.每块由三个子部分组成:1     声明 此部分开头使用关键字DECLARE.它是一个可选的部分,并限定在该程序中使用的 ...

  5. Oracle PL/SQL基础

    1.下载sql developer数据库连接可视化工具 连接地址:点我下载 下载完成,安装有Java环境,解压即可运行,也可以在linux系统中运行.

  6. SQL基础-->层次化查询(START BY ... CONNECT BY PRIOR)[转]

    --====================================================== --SQL基础-->层次化查询(START BY ... CONNECT BY ...

  7. SQL基础-->层次化查询(START BY ... CONNECT BY PRIOR)

    --====================================================== --SQL基础-->层次化查询(START BY ... CONNECT BY ...

  8. oracle(sql)基础篇系列(一)——基础select语句、常用sql函数、组函数、分组函数

        花点时间整理下sql基础,温故而知新.文章的demo来自oracle自带的dept,emp,salgrade三张表.解锁scott用户,使用scott用户登录就可以看到自带的表. #使用ora ...

  9. Oracle数据库之PL/SQL基础

    介绍PL/SQL之前,先介绍一个图像化工具:Oracle SQL Developer 在oracle的开发过程中, 我们难免会使用第三方开发的软件来辅助我们书写SQL, pl/sql是一个不错的sql ...

随机推荐

  1. Go语言实战 - revel框架教程之CSRF(跨站请求伪造)保护

    CSRF是什么?请看这篇博文“浅谈CSRF攻击方式”,说的非常清楚. 现在做网站敢不防CSRF的我猜只有两种情况,一是没什么人访问,二是局域网应用.山坡网之前属于第一种情况,哈哈,所以至今没什么问题. ...

  2. FastCgi与PHP-fpm之间的关系

    web server(比如说nginx)只是内容的分发者.比如,如果请求/index.html,那么web server会去文件系统中找到这个文件,发送给浏览器,这里分发的是静态数据.好了,如果现在请 ...

  3. nodejs模块中exports和module.exports的区别

    通过Node.js的官方API可以看到Node.js本身提供了很多核心模块 http://nodejs.org/api/ ,这些核心模块被编译成二进制文件,可以require('模块名')去获取:核心 ...

  4. 这些.NET开源项目你知道吗?让.NET开源来得更加猛烈些吧

    注意:有网友提出部分项目停止更新的事情,这个问题我特意注意过,很多都是小功能组件,功能稳定,没有bug,没更新是正常的.够用就行了.其次技术支持的事情,对开源免费来说,不能太强求,这里发布的都是小功能 ...

  5. 如何修改MySQL字符集

    首先,MySQL的字符集问题主要是两个概念,一个是Character Sets,一个是Collations,前者是字符内容及编码,后者是对前者进行比较操作的一些规则.这两个参数集可以在数据库实例.单个 ...

  6. EasyUI中那些不容易被发现的坑——EasyUI重复请求2次的问题

    问题控件:datagrid.combobox.所有能设置url属性的控件 问题版本:1.4.4.1.4.5(之前的版本没测) 问题如图: 重复请求2次,错误代码如图: 错误问题分析:html加载的时候 ...

  7. 微信JS-SDK坐标位置转换为百度地图坐标

    微信JS-SDK开发过程中,使用getLocation获取坐标位置,如何将微信获取的坐标直接应用到百度地图中,显示以下效果: 说明:红色图标是从微信转换过来的位置,蓝色图标是周边位置.首先从微信开发流 ...

  8. 用JWT来保护我们的ASP.NET Core Web API

    在上一篇博客中,自己动手写了一个Middleware来处理API的授权验证,现在就采用另外一种方式来处理这个授权验证的问题,毕竟现在也 有不少开源的东西可以用,今天用的是JWT. 什么是JWT呢?JW ...

  9. C# http

    minihttpd minihttpd:HTTPWeb服务器库 https://www.codeproject.com/articles/11342/minihttpd-an-http-web-ser ...

  10. C++四种类型转换方式。

    类型转换有c风格的,当然还有c++风格的.c风格的转换的格式很简单(TYPE)EXPRESSION,但是c风格的类型转换有不少的缺点,有的时候用c风格的转换是不合适的,因为它可以在任意类型之间转换,比 ...