Day06 杂乱与4个对象
1.杂乱
-- 数据库的分页操作
-- 分页使用的是rownum
例1:
select rownum,empno,ename
from emp
where rownum <= 5;
结果:

例2:
select r,empno,ename
from (
select rownum r,empno,ename
from emp
where rownum <= 5
)
where r >1;
结果:

--注意: 给字段取别名不要给表取
--可以根据需求来决定1页要显示的数据条数。
--rowid 用来指定本地文件里面数据存放的位置。
-- purge 回收站
--oracle的回收站
show recyclebin;
-- 查询回收站里面的表的数据 如果你需要查询回收站里面的内容那么你需要满足一个格式,就是给表名添加双引号(" ")。
select * from "BIN$7VBJkRCLTEmSMoICIxm6lg==$0";
-- 双引号的作用
-- 1). 别名 2). 常量 3). 用来查询回收站里面的表的数据
-- 如何还原回收站里面的内容 -- 闪回 在oracle中一共有7中闪回技术。
-- oracle中的约束条件
1). 主键约束 primary key 非空且唯一
2). 非空约束 not null
3). 唯一性约束 unique
4). check约束 check
5). 外键约束 foreign key
例:
create table testemp(
id number(5) primary key,
name varchar2(20) not null,
gender varchar2(10) check(gender in('男','女')),
cardid varchar2(3) unique,
detpno number references dept(deptno)
);
-- constraint 用来修改oracle的错误提示编码
create table testemp
(
id number(5) primary key,
name varchar2(20) constraint name_not_null not null,
gender varchar2(10) constraint gender_check check(gender in('男','女')),
cardid varchar2(3) constraint carid_unique unique,
detpno number constraint fk references dept(deptno)
);
2.4个对象(视图、索引、序列、同义词)
-- 视图(视图是一个逻辑表,用来简化sql查询语句,视图本身不存放数据,视图不能提高查询效率)
-- 视图的创建
-- 默认情况下scott用户是没有创建视图的权限的(view) 。
-- 给soctt用户授权,让它可以创建视图 (grant create view to scott)。
-- 登录dba的命令 cmd >>输入: sqlplus / as sysdba; 然后输入 :grant create view to scott;
例:
create view myview
as
select * from emp;
create view myview
as
select e.ename,d.dname,e.job,e.sal,e.comm
from emp e,dept d
where e.deptno = d.deptno;
-- 视图的第二个用途: 对于一些敏感的数据可以用来隐藏。
-- 一般创建视图的时候都不希望用视图去修改其真实的表。(添加一个 with read only;)
SQL> create view myview
as
select empno,ename,job
from emp
with read only; 视图已创建。 SQL> insert into myview values(1001,'ddd','SAL');
insert into myview values(1001,'ddd','SAL')
*
第 1 行出现错误:
ORA-01733: 此处不允许虚拟列 //这样就可以隐藏一些敏感数据
---索引(index)
-- 索引的用途: 可以用来提高查询的效率, 索引可以在一定程度上提高我们的查询效率,但是它要根据数据量来决定,数据量越多提高的效果越明显,数据越低效果越不明显。
create index myjob on emp(job);
注意: -- 可以通过查询sql执行的日志,来查看是否调用了我们的索引。
-- 经常变动的列不适合建立索引。
-- 索引的实现 -- B树索引和位图索引(矩阵)
-- 序列
sequence 主要用来做主键的自增长。
-- 创建一个序列
create sequence myseq;
-- 如何使用序列: nextval,currentval。
select myseq.nextval from dual;
select myseq.currval from dual;
drop sequence myseq; --删除序列
-- 创建一个序列从50开始
create sequence myseq start with 50;
-- 创建一个序列从50开始,然后每次增加10
create sequence myseq
start with 100
increment by 5;
-- 同义词
-- synonym: oracle中表的别名。
-- 主要用途: 用来给其他用户下的表添加别名。
Day06 杂乱与4个对象的更多相关文章
- python杂乱有关类与对象
在python的类中,一般里面的方法和属性默认都是publlic,如果要设为private,即自己访问,主要是根据命名方式来区分的,通过__ 两个下划线加在名字前面,即为私有方法和私有属性 构造方法 ...
- JavaScript对象(Object)
JavaScript的简单数据类型包括数字.字符串.布尔值.null值和undefined值,其他所有的值都是对象.数字.字符串.布尔值“貌似”对象,因为他们拥有方法,但是他们是不可变的. ...
- 基础学习day06---面向对象二---static,类的初始化和调用顺序、单例模式
一.static关键字 1.1.static关键字 静态:static用法:是一个修饰符,用于修饰成员(成员变量,成员函数)static 修饰的内容,所有对象共享当成员被静态修饰后,就多了一个调用方式 ...
- request对象常用API 获取请求参数的值 request应用 MVC设计模式
1 request对象常用API 1)表示web浏览器向web服务端的请求 2)url表示访问web应用的完整路径:http://localhost:8080/day06/Demo1 ...
- ServletContext对象
**1 ServletContext对象 1)在web应用中,由服务器创建的唯一的一个对象是ServletContext 2)ServletContext对象在每一个Servlet中取得都是相 ...
- QTP自传之对象
对象在手,测试我有 大家别误会,这里说的对象可不是值指男女朋友,而是对被测控件的识别.经过昨天的录制,大家一定很奇怪为什么我可以做到精确的回放操作,这都要归功于对象,下面就隆重的介绍我在对象识别方面的 ...
- ServletContext对象(每个工程只有一个此对象)
一]重点方法: 1>存取对象 void setAttribute(String name, Object object);//将obj ...
- 理解Servlet及其对象
一.ServeltConfig对象 在Servlet的配置文件中,可以使用一个或多个<init-param>标签为Servlet配置一些初始化参数.而不当Servlet配置了初始化参数后, ...
- C++ 对象的内存布局(上)
C++ 对象的内存布局(上) 陈皓 http://blog.csdn.net/haoel 点击这里查看下篇>>> 前言 07年12月,我写了一篇<C++虚函数表解析>的文 ...
随机推荐
- MVC网站后台分离
1.新建一个项目TestAdmin项目类型随便选一个,待会删掉,因为这里我只需要解决方案名称 [项目存放于F盘 F:\TestAdmin] 2.新建一个 ZGJ.Web 的前台MVC项目,将开 ...
- CNN计算过程
- Leetcode - 458 Poor Pigs
题目: 总共有1000个罐子,其中有且只有1个是毒药,另外其他的都是水. 现在用一群可怜的猪去找到那个毒药罐. 已知毒药让猪毒发的时间是15分钟, 那么在60分钟之内,最少需要几头猪来找出那个毒药罐? ...
- 关于PHPAPI ZEND_API TSRM_API宏的定义
在PHP源码中,我们可以见到诸如PHPAPI ZEND_API TSRM_API等xxx_API(当然还有其他格式的)这样的宏 关于它们的定义都是类似于 #if defined(__GNUC__) & ...
- HDU 5073 Galaxy (2014 Anshan D简单数学)
HDU 5073 Galaxy (2014 Anshan D简单数学) 题目链接http://acm.hdu.edu.cn/showproblem.php?pid=5073 Description G ...
- 如何让文字和input框水平放在div里
#text_input { height: 16px; width: 133px; margin-right: 5px; padding:0 0 0 3px; border: 1px solid #C ...
- python操作----Memcached
Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态.数据库驱动网站的速度.Memcached ...
- Linux 下Tomcat启动Cannot find ./catalina.sh
[root@localhost bin]# ./shutdown.sh shCannot find ./catalina.shThis file is needed to run this progr ...
- 2.安装中国版本的firefox
Linux刚安装好的时候,默认是火狐浏览器并且版本比较低,而且预装的是国际版 跟中国版无法同步,因为我windows上是中国版 首先去火狐主页,中文是http://www.firefox.com.cn ...
- Windows下Discuz搭建论坛过程
搭建环境:Win7 + XAMPP5.5 + Discuz3.2 GBK 官方论坛下载安装包,解压,把upload文件夹拷贝到网站文档根目录(例如我的为:D:\IT\XAMPP5.5\htdocs\) ...