Oracle的SQL基础
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基础的更多相关文章
- oracle PL/SQL基础编程
PL/SQL(Procedural Language/SQL)是oracle中引入的一种过程化编程语言 PLS-00103:出现符号"declare"在需要下列之一时 符号&quo ...
- 二十、oracle pl/sql基础
一.pl/sql developer开发工具pl/sql developer是用于开发pl/sql块的集成开发环境(ide),它是一个独立的产品,而不是oracle的一个附带品. 二.pl/sql介绍 ...
- oracle pl/sql 基础
一.pl/sql developer开发工具pl/sql developer是用于开发pl/sql块的集成开发环境(ide),它是一个独立的产品,而不是oracle的一个附带品. 二.pl/sql介绍 ...
- Oracle pl/sql 基础入门语法
PL/SQL是一种块结构的语言,这意味着PL/SQL程序被划分和编写代码的逻辑块.每块由三个子部分组成:1 声明 此部分开头使用关键字DECLARE.它是一个可选的部分,并限定在该程序中使用的 ...
- Oracle PL/SQL基础
1.下载sql developer数据库连接可视化工具 连接地址:点我下载 下载完成,安装有Java环境,解压即可运行,也可以在linux系统中运行.
- SQL基础-->层次化查询(START BY ... CONNECT BY PRIOR)[转]
--====================================================== --SQL基础-->层次化查询(START BY ... CONNECT BY ...
- SQL基础-->层次化查询(START BY ... CONNECT BY PRIOR)
--====================================================== --SQL基础-->层次化查询(START BY ... CONNECT BY ...
- oracle(sql)基础篇系列(一)——基础select语句、常用sql函数、组函数、分组函数
花点时间整理下sql基础,温故而知新.文章的demo来自oracle自带的dept,emp,salgrade三张表.解锁scott用户,使用scott用户登录就可以看到自带的表. #使用ora ...
- Oracle数据库之PL/SQL基础
介绍PL/SQL之前,先介绍一个图像化工具:Oracle SQL Developer 在oracle的开发过程中, 我们难免会使用第三方开发的软件来辅助我们书写SQL, pl/sql是一个不错的sql ...
随机推荐
- Electron中Jquery的引入方式
原文链接http://huisky.com/blog/16122220522957 Electron默认启用了Node.js的require模块,而jQuery等新版本框架为了支持commondJS标 ...
- WCF学习之旅—第三个示例之五(三十一)
上接WCF学习之旅—第三个示例之一(二十七) WCF学习之旅—第三个示例之二(二十八) WCF学习之旅—第三个示例之三(二十九) WCF学习 ...
- 【SQL】关于无法附加文件的错误
[SQL]关于无法附加文件的错误 1.错误信息如下: 2.估计是权限问题右击属性,把权限开一下 3.然后就附加成功了~~ ——————————————————————————————————————— ...
- AngularJS之一个元素上绑定多个指令作用域
前言 众所周知,我们在自定义指令时,会指定它的作用域,即scope设置项(默认值为false). 且,scope设置项,可以有三种值,从而也就代表三种不同的作用域,下面我们再来一起回顾下: 指令之sc ...
- PHP的学习--新特性
最近做的项目使用了 php7,但感觉有很多新特性没有用起来.就想总结一下,一些可能会用到的新特性.之前使用的环境是 php5.4,所有也会有 php5.5 和 php5.6 的特性总结进来,这里只列出 ...
- 【NLP】揭秘马尔可夫模型神秘面纱系列文章(五)
向前向后算法解决隐马尔可夫模型机器学习问题 作者:白宁超 2016年7月12日14:28:10 摘要:最早接触马尔可夫模型的定义源于吴军先生<数学之美>一书,起初觉得深奥难懂且无什么用场. ...
- Vertica 导出数据测试用例
需求:构建简单的测试用例,完成演示Vertica导出数据的功能. 测试用例:导出test业务用户t_jingyu表中的数据. 一.初始化测试环境 二.导出数据 2.1 vsql命令说明帮助 2.2 导 ...
- 4.JAVA之GUI编程事件监听机制
事件监听机制的特点: 1.事件源 2.事件 3.监听器 4.事件处理 事件源:就是awt包或者swing包中的那些图形用户界面组件.(如:按钮) 事件:每一个事件源都有自己特点有的对应事件和共性事件. ...
- (转)从P1到P7——我在淘宝这7年
(一) 2011-12-08 [原文链接] 今天有同事恭喜我,我才知道自己在淘宝已经七周年了.很多人第一句话就是七年痒不痒,老实说,也曾经痒过,但往往都是一痒而过,又投入到水深火热的工作中去.回家之后 ...
- Google地图开发总结
我们经常使用地图查位置.看公交.看街景,同时地图还开放第三方的API给开发者.利用这些API进行地图的个性化的展示和控制,例如北京被水淹了,开发一个网页显示北京被淹的地图,地图上面标志被水淹的位置.严 ...