【Oracle系列十二 约束】教程文章相关的互联网学习教程文章

Oracle系列:(14)子查询【代码】【图】

第一:查询部门名为‘ACCOUNTING‘或‘SALES‘的部门编号? select deptno from dept where dname in (‘ACCOUNTING‘,‘SALES‘);第二:查询部门号为10或30号的员工信息? select * from emp where deptno in (10,30);子查询:select * from emp where deptno in ( select deptno from dept where dname in (‘ACCOUNTING‘,‘SALES‘) );查询工资比20号部门【任意any】一个员工工资【低<】的员工信息(多...

Oracle系列:(13)多表查询【代码】【图】

(只能使用=号),显示员工的编号,姓名,部门名,使用表别名简化select emp.empno,emp.ename,dept.dname,dept.deptno from emp,dept where emp.deptno = dept.deptno;使用非等值连接(不能使用=号,其它符号可以,例如:>=,<=,<>,betwen and等),显示员工的编号,姓名,月薪,工资级别select e.empno,e.ename,e.sal,s.grade from emp e,salgrade s where e.sal between s.losal and s.hisal;内连接查询:只能查询出符合条件的...

Oracle系列:(12)多行函数【代码】【图】

按部门求出该部门平均工资,且平均工资取整数,采用截断select deptno "部门编号",trunc(avg(sal),0) "部门平均工资" from emp group by deptno;(继续)查询部门平均工资大于2000元的部门select deptno "部门编号",trunc(avg(sal),0) "部门平均工资" from emp group by deptno having trunc(avg(sal),0) > 2000;(继续)按部门平均工资降序排列select deptno "部门编号",trunc(avg(sal),0) "部门平均工资" from emp group by deptno h...

Oracle系列:(11)通用函数和条件判断函数【代码】【图】

使用NVL(a,b)通用函数,统计员工年收入,NVL()作用于任何类型,即(number/varchar2/date)通用函数:参数类型可以是number或varchar2或date类型select ename,sal*12+NVL(comm,0) from emp;使用NVL2(a,b,c)通用函数,如果a不为NULL,取b值,否则取c值,统计员工年收入 select ename,sal*12+NVL2(comm,comm,0) from emp;使用NULLIF(a,b)通用函数,在类型一致的情况下,如果a与b相同,返回NULL,否则返回a,比较10和10.0是否相同select...

Oracle系列:(10)小结

使用NVL(a,b)通用函数,统计员工年收入,NVL()作用于任何类型,即(number/varchar2/date)通用函数:参数类型可以是number或varchar2或date类型使用NVL2(a,b,c)通用函数,如果a不为NULL,取b值,否则取c值,统计员工年收入 使用NULLIF(a,b)通用函数,在类型一致的情况下,如果a与b相同,返回NULL,否则返回a,比较10和10.0是否相同使用SQL99标准通用语法中的case表达式,将职位是分析员的,工资+1000;职位是经理的,工资+800;职位...

Oracle系列:(9)三大类型转换【代码】【图】

查询1980年12月17日入职的员工(方式一:日期隐示式转换)select * from emp where hiredate = ‘17-12月-80‘;1、转向字符串1.1、由日期转向字符串使用to_char(日期,‘格"常量"式‘)函数将日期转成字符串显示如下格式:2015 年 04 月 25 日 星期六select to_char(sysdate,‘yyyy" 年 "mm" 月 "dd" 日 "day‘) from dual;使用to_char(日期,‘格式‘)函数将日期转成字符串,显示如格式:2015-04-25今天是星期六 15:15:15select to...

Oracle系列:(16)分页【代码】【图】

什么是rownum,有何特点1)rownum是oracle专用的关健字2)rownum与表在一起,表亡它亡,表在它在 3)rownum在默认情况下,从表中是查不出来的4)只有在select子句中,明确写出rownum才能显示出来5)rownum是number类型,且唯一连续6)rownum最小值是1,最大值与你的记录条数相同7)rownum也能参与关系运算 * rownum = 1 有值 * rownum < 5 有值 * rownum <=5 有值 * rownum > 2 无值 * rownum >=2 ...

Oracle系列:(15)集合查询

Oracle系列:(15)集合查询标签:oracle本文系统来源:http://lsieun.blog.51cto.com/9210464/1847480

Oracle系列:(19)增删改数据【代码】【图】

】使用&占位符,动态输入值,&可以运用在任何一个DML语句中,在values子句中使用,例如:‘&ename‘和&salinsert into emp values(&empno,‘&ename‘,‘&job‘,&mgr,&hiredate,&sal,&comm,&xxxxxxxx);注意:&是sqlplus工具提供的占位符,如果是字符串或日期型要加‘‘符,数值型无需加‘‘符【&占位符应用于select的表名】使用&占位符,动态输入值,&可以运用在任何一个DML语句中,在from子句中使用select * from &table;【&占位符...

Oracle系列:(21)访问其他用户下的对象[授权]【代码】【图】

声明:scott或hr叫用户名/方案名/空间名 scott--tiger hr-----lion 查询当前用户是谁show user;查询scott自己表空间下的所有对象时,可加,或不加用户名select * from emp;select * from emp;或select * from scott.emp;以sysdba身份解锁hr普通帐户alter user hr account unlock;以sysdba身份设置hr普通帐户的密码alter user hr identified by lion;当scott查询hr表空间下的所有表时,必须得加用户名select * from ...

Oracle系列:(20)事务【代码】【图】

回顾MySQL的事务开始:start transactionOracle的事务开始:第一条DML操作做为事务开始Oracle的提交事务(1)显示提交:commit(2)隐藏提交:DDL/DCL/exit(sqlplus工具)注意:提交是的从事务开始到事务提交中间的内容,提交到ORCL数据库中的DBF二进制文件Oracle的回滚事务(1)显示回滚:rollback(2)隐藏回滚:关闭窗口(sqlplus工具),死机,掉电注意:回滚到事务开始的地方回顾什么是回滚点?在操作之间设置的一个标志位,用于...

Oracle系列:(27)小结

闪回(02)create table emp as select * from xxx_emp where 1<>1是什么意思? 依据xxx_emp表创建emp表结构,但无记录(03)事务是针对DML/DDL/DCL哪种语句? 针对DML(04)drop table/truncate table/delete from 的区别? drop table 是DDL/不可回滚/不可带where/表内容和表结构均没 truncate table是DDL/不可回滚/不可带where/表内容和表结构均在 delete from 是DML/可回滚/可带where/表内容和表结构均在/是速度最慢的一个(...

Oracle系列:(26)用户权限控制【代码】【图】

Oracle中的用户分为二大类1)Oracle数据库服务器创建时,由系统自动创建的用户,叫系统用户,如sys。2)利用系统用户创建的用户,叫普通用户,如scott,hr,c##tiger,zhaojun,...》用sys登录,查询当前Oracle数据库服务器中已有用户的名字和状态 username表示登录名 expired&locked表示帐号过期和锁定 open表示帐号现在可用 sqlplus / as sysdba; col username for a30; col account_status for a30; set pagesize 100; ...

Oracle系列:(25)索引【代码】【图】

rowid的特点(1)位于每个表中,但表面上看不见,例如:desc emp是看不见的(2)只有在select中,显式写出rowid,方可看见(3)它与每个表绑定在一起,表亡,该表的rowid亡,二张表rownum可以相同,但rowid必须是唯一的(4)rowid是18位大小写加数字混杂体,唯一表代该条记录在DBF文件中的位置(5)rowid可以参与=/like比较时,用‘‘单引号将rowid的值包起来,且区分大小写(6)rowid是联系表与DBF文件的桥梁思考:rowid是联系表与...

Oracle系列:(24)序列

generates identifiers of type long, short or int that are unique only when no other process is inserting data into the same table. Do not use in a cluster.identitysupports identity columns in DB2, MySQL, MS SQLServer, Sybase and HypersonicSQL. The returned identifier is of type long, short or int.sequenceuses a sequence in DB2, PostgreSQL, Oracle, SAP DB, McKoi or a generator in Interbase. The ret...