Oracle入门

--创建用户
create user qjt identified by 1234

--权限
grant connect to qjt

grant resource to qjt

--建表
create table userinfo
(id number primary key not null)

--查询有几张表
select * from all_tables where owner=‘QJT‘

--伪列
select id,rowid,rownum from userinfo

--查询自然排序的第三条记录
select * from
(
select ename,rownum rn from emp
) temp
where rn=3

--查询教师表中薪水排名第五的教师信息
select * from
(
select rownum rn,ta.* from
(
select ename,sal,rownum rn from emp order by sal desc
)ta where rownum<6
)where rn>=5

--分页
--方法一
select * from
(
select temp.*,rownum rn from
(
select emp.* from emp
order by sal desc
) temp
where rownum<=9
)
where rn>=5
--方法二
select * from
(
SELECT temp.*,ROWNUM rn FROM
(
SELECT * FROM emp e ORDER BY e.sal DESC
)temp
)temp2
WHERE TEMP2.rn BETWEEN 5 AND 9

--授权
grant select on HAPPYY2165.STUDENT to scott

--解锁用户
alter user hr account unlock

--收回权限
revoke select on qjt from SCOTT

--通过角色控制
--自定义角色
CREATE role role_testy2165

--将查询表的权限和角色绑定
grant SELECT ON Y2165."student" TO role_testy2165

--给用户分配角色
GRANT role_testy2165 to SCOTT

--distinct查询不重复的数据
select DISTINCT "stuname","stuage" from STUDENT;

--创建学生表的备份表
create table studentbak
as
select * from STUDENT

--删除相同的列,保留id最大的
DELETE FROM student
WHERE "stuno" NOT IN(SELECT "MAX"("stuno") FROM student GROUP BY "stuname","stuage")

SELECT 1+1 FROM dual

SELECT ‘你‘||‘好‘ FROM dual

SELECT ‘运算结果‘||‘5‘ FROM dual

--交集
SELECT deptno FROM dept
INTERSECT
SELECT DISTINCT deptno FROM emp

--减集
SELECT deptno FROM dept
MINUS
SELECT DISTINCT deptno FROM emp

时间: 2024-10-13 11:30:15

Oracle入门的相关文章

oracle入门(1)——安装oracle 11g x64 for windows

[本文简介] 最近因为一个项目的需要,从零学习起了oracle,现在把学到的东西记录分享一下. 首先是安装篇,在win8 装10G 一直失败,网上各种方法都试过了,最后不得不放弃,选择了11G. 11G的安装很简单,基本是“下一步”——“完成”的模式,本文只是介绍哪些步骤需要注意一下和里面相应名词的解释, 以后可能要用到这些信息. [安装典型步骤] 1.典型安装 这里需要记住被红圈圈起来的 “全局数据库名” 和 “管理口令” (1)全局数据库名:要与下面的SID区分开来,是数据库真正的唯一标识,

oracle入门(2)—— 使用图形工具navicat for oracle

[本文介绍] 本文将介绍如何使用图形工具navicat for oracle连接本地数据库 以及远程访问 服务器数据库. [下载地址] http://www.navicat.com.cn/download/navicat-for-oracle [11G版本访问本地数据库] 安装navicat for oracle——打开连接——弹出新建连接——输入如图所示 , 其中有几个地方需要注意的 (1)端口:因为是本地服务器,所以可用填入 loaclhost 或者是 127.0.0.1 (2)Servic

oracle入门(8)——实战:支持可变参数、多种条件、多个参数排序、分页的存储过程查询组件

[本文介绍] 学了好几天,由于项目需要,忙活了两天,写出了个小组件,不过现在还只能支持单表操作.也没考虑算法上的优化,查询速度要比hibernate只快了一点点,可能是不涉及多表查询的缘故吧,多表的情况下才更快. 经非专业的测试,在有分页的情况下,在300万条数据里面查询的时间保持在0.1秒内.相同查询条件+分页的情况下,hibernate 用时0.3秒内. 不分页的条件下,查出来的数据越多,时间越长,时间长的话,跟hibernate相相比就没什么优势了. [思路] 我的思路是从java传来”字

oracle入门(3)——oracle服务解释

[本文介绍] oracle不像mysql,安装后之后一个服务,如果mysql连接不上,打开其服务就行.oracle是有多个服务,哪些服务要开,哪些服务没必要开,对新手来说未必不是一个难点.下面对oracle的服务做一下总结. 以下内容来源于百度,发表该随笔只为备忘,感谢最先发表者(追溯不到). [oracle服务介绍] (1)OracleServiceSID 数据库服务,这个服务会自动地启动和停止数搜索据库.如果安装了一个数据库,它的缺省启动类型为自动.服务进程为ORACLE.EXE,参数文件i

oracle入门(4)——少而常用的命令

[本文介绍] 本文将介绍使用oracle的常用命令,不是”大全“,但少而实用. [命令介绍] 描述: 命令: [数据库]   (1)查看编码格式: select userenv('language') from dual; (2)设置编码格式为utf-8 (1) --先查看oracle数据库字符集:  select userenv('language') from dual; 查询结果: SIMPLIFIED CHINESE_CHINA.AL32UTF8 (2) --修改oracle数据库字符集

oracle入门(5)——java连接oracle数据库

[本文介绍] 前面几篇说了那么多,最终还没讲到如何用java连接数据库,本文实用一点,讲讲如何连接数据库. [java连接oracle数据库] 1.导入jdbc驱动:看到这里,就忙着上网找驱动?不,安装了oracle就有自带驱动了,路径在:安装目录\product\11.2.0\dbhome_1\jdbc\lib,下面有多个jar包,选择适合自己的一个(最简单的办法就是导入项目后看看能连接不,能连接的就是适合的驱动) 2.代码: 关于url:@后面是IP:端口,这两个不知道怎么查的请看博文:ht

oracle入门(7)——存储过程

[本文介绍] 熟悉了PL/SQL语法后,实现java调用oracle存储过程才是主要目的.本文将介绍如何写存储过程,java如何调用存储过程. [存储过程介绍] 抛开专业的描述,存储过程就是在数据库里面写了一些函数,我们在代码(如java)里面调用这些函数实现对数据库的操作,避免了数据库对SQL语句的解析,对于需要发送多条SQL语句才能完成的数据库操作功能来说,速度上升了一个档次.不过程序在操纵数据库这一块 的维护性会降低,因为存储过程是写在数据库,不是写在程序里. [如何写有能传值 并且 有返

oracle入门(6)——PL/SQL常用语法

[本文介绍] 本文不是”语法大全“,只是记录下作项目里自己常用的一些语法.方便查询. [语法] [输出]   (1)输出语法 DBMS_OUTPUT.PUT_LINE( ) [定义]   (1)定义变量: ...... as 变量名 类型(长度) begin ...... 例如: (2)定义变量 ,类型 依赖其他变量的类型 例如: 这样,改了name的类型,returnValue类型也跟着改变. (3)自定义类型(类似C语言的结构体)每次只能拿一条数据,不然会的报错. 例如: (4)以“表”做为

oracle入门(个人参考笔记)

Oracle入门 数据库服务器.数据库和表的关系 所谓安装数据库服务器,只是在机器上装了一个数据库管理程序,这个管理程序可以管理多个数据库,一般开发人员会针对每一个应用创建一个数据库. 为保存应用中实体的数据,一般会在数据库创建多个表,以保存程序中实体的数据. 数据库服务器.数据库和表的关系如图所示: oracle管理工具的介绍(1) sql*plus是oracle自带的工具软件,主要用于执行sql语句,pl\sql块. 如何使用: 1)在开始->程序->oracle oradb_home10

oracle入门学习笔记

Oracle学习笔记 推荐书籍:<Oracle有用教程(从入门到精通)>.<深入浅出Oracle> 1. 当前主流数据库: |-微软:SQL Server.access |-瑞典:Mysql |-IBM: DB2 |-Sybase: Sybase |-Oracle:Oracle A. 小型数据库:access.foxbase. 负载量小,100人内,成本千元内,安全性要求不高. 比如留言板等. B. 中型数据库:Mysql.SQL Server.Informix.日訪问量5000-