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++虚函数表解析>的文 ...
随机推荐
- scale-free network
原文链接:http://lihailian.bokee.com/6013647.html 1.什么是无尺度现象? 统计物理学家习惯于把服从幂次分布的现象称为无尺度现象. 在做大量统计实验之前,科学家预 ...
- [SOJ]统计数字
Description 某次科研调查时得到了n个自然数,每个数均不超过1500000000(1.5*10^9).已知不相同的数不超过10000个,现在需要统计这些自然数各自出现的次数,并按照自然数从小 ...
- php函数搜集
数组去重: 方法1:php自带此功能的函数array_unique($arr) 方法2:$arr = array_flip(array_flip($arr)); //这样便可以删除重复元素. 比上面的 ...
- 移动互联网app
移动互联网app 2 App测试点 2.1安全测试 2.1.1软件权限 1隐私泄露风险:包括访问手机信息.访问联系人信息等 2对App的输入有效性校验.认证.授权.敏感数据存储.数据加密等方面进行检测 ...
- ecshop 后台添加新的设置
1.ecs_shop_config 表添加新的值. 2.language/zh_cn/admin/shop_config.php 设置字段后台字段名和提示信息($_LANG['cfg_name'][' ...
- Maven编译可执行jar
打包: 第一种情况:独立项目,且无第三方依赖包 这种情况下,我们需要maven的maven-jar-plugin插件来帮我们打包.请在项目pom.xml中的plugin配置处加入如下内 <plu ...
- jx problem
Entity: line 37: parser error : xmlParseEntityRef: no nameecho "xxxxxx > /dev/null 2>& ...
- angularjs各版本下载
下载网址:https://code.angularjs.org/1.2.14/
- centos7,yum安装的redis用systemctl无法启动
因为之前使用显示命令启动redis的,要使redis在后台运行就需要改redis.conf中的daemonize 为yes. 这次在centos7上也顺手改了为yes,然后使用systemctl启动, ...
- Restaurant & Cooking Starter Kit v1.2.1
项目: using UnityEngine; using System.Collections; namespace VoidGame { public class Constant : MonoBe ...