SQL语句:

1、数据查询语句     SELECT

2、数据定义语句     DDL     定义表、视图、索引

3、数据操纵语句     DML     INSERT、UPDATE、DELETE

4、数据控制语句     DCL

基本的数据类型:

number(p,s) --> p个数字,s是p中小数点后的数字位数

smallint    --> 表示16位的整数

integer     --> 32位的整数

varchar(n)  --> 可变长度的字符串,最长为n

char(n)     --> 固定长度为n的字符串

一、基本查询语句

1)DESC 表名   -->  查看表的关键字、类型

2)dual是虚表   -->  只有一个字段X,是空表

3)SELECT 字段名(原) 字段名(改) FORM表名     -->  修改字段名称

如果修改后的字段名称里有空格,那么整个修改后的名称用双引号括起来,不仅是空格,中文等特殊字符也要用双引号,用双引号的字段名不会变成大写

注意:字段里的空值与0是不同的概念,任何含有空值的表达式与其他表达式运算后其结果还是空值

4)distinct

SELECT DISTINCT 字段 FORM 表名 -->  把字段中值不重复的列出来

SELECT DISTINCT 字段1,字段2 FORM 表名 -->  把两个字段组合中不重复的列出来

5)条件表达式

WHERE sal IN <800, 1000, 1500>

BETWEEN 800 AND 1500(包括两个界限)

IS (NOT) NULL

WHERE     birthday  > '20-2月-1988' (对日期的处理) 后面的字符串要和日期的格式相同

WHERE name LIKE + "."一个字母, "*"0个或多个字母  "?"0个或一个

"+"一个或多个  "%"0个或多个    "_"一个字母

二、单行函数(只要有一条数据就产生一个输出)

nvl(i,j) 专门用来处理空值,当i为空值时就把他的只当成j的值

三、聚合函数(组函数)

min()、max()、

avg() 只能对数值型的字段使用

sum()、count()

count(*)就是求这个表里有多少记录

注意:聚合函数不能用在WHERE子句中

在使用聚合函数是一定小心,如果在SELECT查询语句的条件表达式中出现聚合函数时不要用WHERE语句,要使用HAVING条件句

四、逻辑运算符

NOT > AND > OR

DDL

1、创建一个表

CREATE  TABLE 表名(列名1 列约束,列名2  列约束)

列约束:NOTNULL , UNIQUE

注意:1)把较小的不为空的字段放在前面,可能为空的字段放在后面

2)创建表时可以使用中文的字段名,但最好使用英文字段名

3)创建表时加上默认值,如DEFAULT SYSDATE

4)可以给字段加上约束条件

2、删除语句 DROP

可以删除表、索引

3、修改语句 ALTER

1)在表的后面添加一个字段

ALTER TABLE 表名 ADD 列名 类型; 或 ALTER TABLE 表名 ADD (列名1 类型1[,列名2 类型2 ...]);

2)设置一个主键

ALTER TABLE 表名 ADD PRIARY KEY (列名);

3)删除一个主键

ALTER TABLE 表名 DROP PRIMARY KEY(列名);

4)修改表的名称

RENAME 旧表名 TO 新表名

5)改变表里字段的定义描述

ALTER TABLE 表名 MODIFY 字段描述;

6)给表里的字段加上唯一约束

ALTER TABLE 表名 ADD CONSTRAINT cons_name UNIQUE(列名);

cons_name 是给约束起的名称

-->ALTER TABLE ABC ADD CONSTRAINT ONLY  UNIQUE(A1);

4、数据删除语句 TRUNCATE

TRUNCATE TABLE 表名;

(只删除表的记录,而不删除表的结构)

DML(数据操纵语句)

1、INSERT:

在插入日期的时候,可以直接使用字符串,内部直接转换成日期格式。默认格式是‘D-M-YY’、

TO_DATE('2008-09-09','YYYY-MM-DD')按照指定的格式显示

INSERT INTO 表名(字段列表) SELECT (字段名列表) FORM 表名;

2、UPDATE:

UPDATE table_name SET column1 = 'XXX' WHERE conditions;

UPDATE table_name SET(col1,col2..) = (SELECT ...) WHERE ..

3、DELETE:

DELETE [FROM] 表名 WHERE 条件;

4、事务处理语句

1) 显示提交 COMMIT;

2)隐式提交 DDL(CREATE DROP ALTER TRUNCATE GRANT REVOKE) 她们都不用再提交

3) 自动提交 SET AUTOCOMMIT ON;

事务回滚语句 ROLLBACK

触发器:

CREATE [OR REPLACE] TRIGGER

ON 表名

[FOR EACH ROW]

PL/SQL

触发事件:DML:INSERT UPDATE DELETE

触发条件:条件为true

触发器动作:PL\SQL

posted on 2008-11-24 09:38 懒虫 阅读(191) 评论(0)  编辑  收藏 所属分类: Oracle

oracle的基本概念,oracle的基本概念相关推荐

  1. oracle流复制实现,Oracle流复制技术的基本概念、工作流程及其容灾备份

    龙源期刊网 http://www.doczj.com/doc/9e45114b3186bceb18e8bb1b.html Oracle流复制技术的基本概念.工作流程及其容灾备份 作者:周军 来源:&l ...

  2. oracle元数据存储在表空间,oracle db中数据和元数据的概念

    本帖最后由 warehouse 于 2014-8-10 11:58 编辑 02年研究dw相关的产品和业务时第一次听说了元数据的概念,很多资料上是这样描述元数据的概念的:元数据是定义或者描述数据的数据. ...

  3. oracle asm 概念,ORACLE之ASM概念

    五.  目录及目录文件管理 5.1   创建目录 SQL> alter diskgroup ASMGROUP1 add directory '+ASMGROUP1/WWL1'; Diskgrou ...

  4. oracle中维表 的概念,Oracle 数据库 10g 的 OLAP 选 件的新增功能与性能优势

    请注意,Oracle9i 数据库第 2 版的情况是部分聚合,而 Oracle 数据库10g 第 1 版的情况是完全聚合.完全聚合多维数据集将产生更好的查询性能. 正如预期的那样,多维数据集的大小也因多 ...

  5. oracle rac步骤概述,Oracle RAC 基本概念及入门

    1.什么是cluster 一个cluster是由两个或是多个独立的.通过网络连接的servers组成的.几个硬件供应商多年以来提供了Cluster性能的各种需求.一些 Clusters仅仅为了提供高可 ...

  6. oracle rman备份时间,Oracle使用RMAN进行备份详述

    备份理论和基本语法 备份概念 执行备份或还原的数据库称为目标.在一些环境下,有许多数据库,因此有许多RMAN目标.应一次连接每个数据库.目标的每个备份都有一些属性: 打开或关闭 完整或部分 完整或增量 ...

  7. oracle proc 定义宿主,oracle proc 编程基础及最小化案例

    oracle proc 编程是在我的概念中是非常陌生的,学习了一天下来发现这东西真的好古老,但是依然健壮.稳定,其中间是编辑一个 .pc 的文件使用 proc 进行预处理,预处理后生成一个真正的.c文 ...

  8. oracle电子商务套件视频,Oracle电子商务套件培训 Oracle EBS R12 制造模块培训视频教程 Oracle管理套件教程...

    Oracle电子商务套件培训 Oracle EBS R12 制造模块培训视频教程 Oracle管理套件教程│  ├<01> │  │  ├00_ERP基本原理-概念补充.pdf │  │  ...

  9. 利用oracle执行系统命令,利用oracle存储过程执行操作系统命令(转)

    以下方法在WINNT,LINUX下的oracle9i上测试通过,java过程调用系统命令 首先给使用java存储过程的用户授予一定的权限 <>表示所有文件,也可以单独指定文件. r w e ...

  10. oracle安装出现getproces,oracle安装问题

    一.引入问题 帮朋友在CentOS上安装一个10g的Oracle,结果朋友的CentOS版本是6.2的版本,最新的一个版本,不过Linux上基本都差不多,所以按照以前的步骤,迅速的操作起来,结果遇到N ...

最新文章

  1. 第三次组队赛 (DFSBFS)
  2. 截取中文字符长度(中文、字母都有效)
  3. android新拟态实现方法,Android 新拟态UI (Neumorphism)
  4. k上升段,对于排列问题的处理
  5. 不是有效的函数或过程名_什么是函数?
  6. 整理了10个行业的30份可视化大屏模板,可直接拿走套用
  7. Linux下使用awk批量删除共享内存
  8. Python让繁琐工作自动化——chapter14 处理CSV和JSON数据
  9. 我们聊聊快排吧...
  10. C++判断一个数是否为素数
  11. 安信可 Telink_825x 环境搭建
  12. linux更新war包操作步骤,关于Linux系统下基于Tomcat部署和升级war包的详细过程
  13. android开发中即时聊天软件中时间的获得
  14. python16进制表示0xad_在 Python 中 0xad 是合法的十六进制数字表示形式。 (2.0分)_学小易找答案...
  15. 基于大数据的线上线下电商用户数据挖掘研究
  16. Linux搭建MQTT服务器(mosquitto)并使用
  17. Java里面的同步和异步
  18. Tomcat报ClassFormatException: Invalid byte tag in constant pool: 19解决方法
  19. HTML/CSS IE6、7兼容性问题、bug总汇
  20. anaconda安装NLTK详细说明

热门文章

  1. 大学计算机课程第六章答案,大学计算机网络课程第六章.ppt
  2. linux jar和zip,Linux命令———zip和jar文件压缩解压
  3. matlab程序转java_用面向对象的方法将一段JAVA代码转化为matlab
  4. 灰色关联法 —— python
  5. python基础入门(3)之字符串
  6. 【OpenCV 例程 200篇】98. 统计排序滤波器
  7. android中svn插件安装,AndroidSDK安装SVN插件问题解决
  8. linux mplayer_移植mplayer播放器到EK200开发板的步骤浅析
  9. win10 make命令的安装
  10. python将Unix时间戳转换成时间