![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Oracle
huang798807481
这个作者很懒,什么都没留下…
展开
-
Oracle登陆身份
1.sysdba:数据管理员,权限包括:打开数据库服务器、关闭数据库服务器、备份数据库、恢复数据库、日志文档、会话限制、管理功能、创建数据库。2.sysoper:数据操作员,权限包括:打开数据库服务器、关闭数据库服务器、备份数据库、恢复数据库、日志归档、会话限制。3.normal:普通用户,权限:只能查询某些数据表的数据。默认的身份是normal身份。原创 2012-04-13 10:14:42 · 631 阅读 · 0 评论 -
Oracle程序包
1.包用于逻辑组合相关的PL/SQL类型、项和子程序,它由包规范(Package Specification)和包体(Package Body)两部分组成(先建立包规范,在建立包体),包体名称和包规范名称必须相同。2.包规范相当于接口,建立包规范时(create package),为了实现信息隐藏,不应该就所有组件全部放在包规范处定义,而应该定义公用组件。例如:create or原创 2012-04-14 18:11:46 · 710 阅读 · 0 评论 -
Oracle子程序(存储过程、函数)
1.子程序是有名字的PL/SQL语句块,包含存储过程和函数,其优点(模块化 可重用性 可维护性 安全性)。2.存储过程:create [or replace] procedure_name(argument1 [mode1] datatype1,argument2 [mode2] datatype2..)is[as]PL/SQL Block;3.原创 2012-04-14 10:58:15 · 953 阅读 · 0 评论 -
批量绑定(FORALL)
1.批量绑定是指执行单次SQL操作能传递所有集合元素的数据,可以极大的加快数据处理速度,提高程序的性能,它是使用Bulk Collect子句和ForALL子句来完成的。2.ForAll:该子句只适用于执行批量的DML操作,只能修饰一条语句,它包括3种语法:a.ForAll index in lower_bound..upper_boundsql_statement;例如:creat原创 2012-04-13 11:42:28 · 797 阅读 · 1 评论 -
PL/SQL集合的区别
索引表、嵌套表、变长数组的区别: 索引表嵌套表变长数组下标限制NYY长度限制NNY索引是否连续NYY值是否连续YNN表列数据类型NYY字符串索引YNN使用前初始化NYY原创 2012-04-14 22:46:12 · 606 阅读 · 0 评论 -
使用POWERDESIGNER设计数据库的21条技巧
1、PowerDesigner使用MySQL的auto_increment◇问题描述:PD怎样能使主键id使用MySQL的auto_increment呢?◇解决方法:打开table properties窗口 → columns → 选中id列 → 打开columns properties窗口 → 勾选identity即可注意:概念模型没有此选项,物理模型才有原创 2012-04-16 13:10:49 · 1392 阅读 · 0 评论 -
Any、All查询
1.Any:结果集中的任意一个值。例如:select * from scott.emp where sal就是在结果集中取任意值(比结果集最大的小的就可以),反之>any就是比结果集中最小的大可以。就是只要满足这个只查询结果中任意一个就是true,否则为false;2.All:和Any相反,>All就是比子查询结果中的所有值还要大(比最大值更大),例如:select * fro原创 2012-04-13 10:58:06 · 702 阅读 · 0 评论 -
Oracle游标
1.游标(cursor):用了查询数据库,获取记录集合(结果集)的指针,可以一次一行的访问指针,在每条结果集中操作。其游标分为:a.静态游标:分为显式(explicit)游标和隐式(implicit)游标。显示游标:注:游标关闭后将提取不到数据 定义游标—打开游标—提取数据—关闭游标(Cursor cursor_name is select_statement)。游标属性原创 2012-04-14 00:56:21 · 591 阅读 · 0 评论 -
PL/SQL远程连接
一、服务器配置:1.配置oracle服务器的监听器listener修改安装目录>/network/admin/目录下的listener.ora和tnsnames.ora两个文件。其中listener文件大致如下:# listener.ora Network Configuration File: /oracle/app/product/10.1.0/db_1/n原创 2012-04-13 10:49:24 · 569 阅读 · 0 评论 -
Oracle中伪列、分页语句
1.RowID:储存表中每一行在记录的物理地址,唯一可以标识表中的一行,插入记录产生的。使用RowID可以快速的定位表中的某一行。(是一种数据类型,不可更改的,索引都是基于伪列的,使用RowID是查询效率最高的一种方式)。例如:select rowid,empno from scott.emp。2.RowNum:是查询数据生成的,临时的,通常分页的时候用到。例如:select * fr原创 2012-04-13 10:56:44 · 820 阅读 · 0 评论 -
oracle导入、导出
导出(导入)要使用到 %ORACLE_HOME%/db_1/BIN/exp.exe(imp.exe)可以配置环境变量path,然后直接使用exp命令-------------------------------------------------------------------------------------------· 导出 : 导出表,导出方案,导出转载 2012-09-21 19:28:48 · 711 阅读 · 0 评论 -
Oracle操作符
1.算术运算:+-*/,求余运算要借助函数MOD(x,y):返回x/y的余数。2.逻辑运算符:AND、OR、NOT,其中OR(in)、NOT(!=true)无索引,AND(组合索引)。3.distinct消除重复行,不支持索引,可以使用Group by。4.Like操作:escape(转义符),select * from dept where dname like '5\%' esca原创 2012-04-13 10:33:29 · 612 阅读 · 0 评论 -
深入SQL之merge into
用途 merge 命令可以用来用一个表中的数据来修改或者插入到另一个表。插入或者修改的操作取决于on子句的条件。该语句可以在同一语句中执行两步操作,可以减少执行多条insert 和update语句。merge是一个确定性的语句,即不会在同一条merge语句中去对同一条记录多次做修改操作。语法 其中,merge_insert_clause::= 关转载 2013-07-16 13:02:52 · 1032 阅读 · 0 评论 -
总结1
一、Oracle基本安装:1.Oracle(甲骨文)简介:产品免费,服务收费的软件,全局数据库名是它的唯一标识。2.配置本地网络服务名。3.使用PL/SQL Developer第三方工具。4.启动和关闭和Oracle相关的服务。5.Oracle用户和权限。二、Oracle数据操作和查询:1.Oracle SQl语句的组成(DDL,DML(select...For upd原创 2012-04-14 10:21:23 · 672 阅读 · 0 评论 -
PL/SQL中操作符、条件和循环控制
1.PL/SQL是一种块结构语言,它将一组语句放在一个块中,一次性发送给服务器,先编译后执行。对于有名称的PL/SQL块,可以单独编译,永久的存在数据库中,随时准备执行。PL/SQL的优点:a.支持SQL(忽略大小写).b.支持面向对象过程.c.更好的性能(SQL非过程语言,只能一条一条执行,PL/SQL可以一次性把一个块统一进行编译).d.可移植性.e.安全性.2.PL/原创 2012-04-14 00:47:32 · 827 阅读 · 0 评论 -
PowerDesigner 12 通用破解方法
PowerDesigner 12 通用破解方法修改安装目录下的pdflm12.dll文件,使用二进制编辑器打开此文件,查找:83 C4 14 8B 85 E4 FE FF FF将此字符串改为83 C4 14 33 C0 90 90 90 90原创 2012-04-15 14:29:57 · 1324 阅读 · 0 评论 -
Oracle数据类型
1.Char(length):存储固定长度的字符串。如果存储的字符串长度小于length,用空格填充。默认长度是1,最长不超过2000字节。2.Varchar2(length):存储可变长度的字符串,Char的效率比Varchar2的快。3.Number(p,s):存储浮点数或者整数,p表示整个(包括整数和小数部分和小数点(小数点也是一位),p默认是38位),s是指小数位数。例:numbe原创 2012-04-13 10:30:11 · 504 阅读 · 0 评论 -
Oracle集合
集合(查询效率较高):1.Intersect(交集):返回两个查询共有的记录。例如:select deptno from scott.emp Intersect select deptno from scott.dept;结果是两个表之间的共同值。2.Union all(并集):返回各个查询的所有记录,包括重复记录。例如:select deptno from scott.emp u原创 2012-04-13 10:37:06 · 606 阅读 · 0 评论 -
Oracle中常用函数
A.字符函数1.ASCII(x):返回字符x的ASCII码(select ascii('a') from dual;结果(97))。2.Concat(x,y):连接字符串x和y(select concat(1,'a') from dual;结果(1a))。3.Instr(x,str[,start][,n):在x中查找str,可以指定从start开始,也可以指定从第n次开始(select原创 2012-04-13 10:39:28 · 635 阅读 · 0 评论 -
Oracle表空间及表分区
1.表空间:是一个或多个数据文件的集合,主要存放的是表,所有的数据对象都存放在指定的表空间中;一个数据文件只能属于一个表空间,一个数据库空间由若干个表空间组成,其中包括:a.系统表空间:10g以前,默认系统表空间是System,10g包括10g以后,默认系统表空间是User,存放数据字典和视图以及数据库结构等重要系统数据信息。b.Temp表空间:临时表空间,安装数据库时创建。c.用户自定义表原创 2012-04-13 10:59:10 · 783 阅读 · 0 评论 -
PL/SQL中不通过游标把值添加到集合中
1.把多行单列的值添加到索引表中(通过RowNum):例如declare type dname_table_type is table of scott.dept.dname%type index by binary_integer; dname_table dname_table_type; dcount number(2);begin select count(*) i原创 2012-04-13 11:33:05 · 772 阅读 · 0 评论 -
Oracle数据字典
收集了Oracle数据字典中几乎所有的视图或别名,至于每个视图或别名的字段请用‘Describe’语句来查询。命名说明:Oracle数据字典中,对象名称多数以"USER.","ALL.","DBA."为前缀"USER."视图中记录通常记录执行查询的帐户所拥有的对象的信息"ALL."视图中记录包括"USER"记录和授权至PUBLIC或用户的对象的信息"DBA."视图包含所有数原创 2012-04-13 10:42:24 · 1443 阅读 · 3 评论 -
Oracle中的语言
1.数据定义语言(DDL),包括create(创建)命令、alter(修改)命令、Drop(删除)命令等。2.数据操纵语言(DML),insert、update、delete、select ... for update(查询)[不是数据查询语言]等。3.数据查询语言(DQL):order by和group by子句。4.事务控制语言(TCL):commit、savepoint(保存点)原创 2012-04-13 10:23:02 · 585 阅读 · 0 评论 -
Oracle中复合数据类型例子
declare type emp_record_type is record( name scott.emp.ename%type, salary scott.emp.sal%type, dno scott.emp.deptno%type ); emp_record emp_record_type;begin select en原创 2012-04-13 10:46:17 · 1393 阅读 · 0 评论 -
Oracle角色
1.Connect角色:主要应用于临时用户,可以与服务器连接。2.Resource角色:可以提供给用户权限创建他们自己的表、序列、过程(produce)、触发器(tigger)、索引(index)等。3.DBA角色:该角色拥有所有的系统权限----包括无限制的空间限额和给其他用户授予各种权限的能力。用户System拥有DBA角色。4.赋予权限:grant 角色|权限 to 用户(角色)原创 2012-04-13 10:20:07 · 543 阅读 · 0 评论 -
PL/SQL中的异常
1.PL/SQL中处理异常的关键字Exception,语法格式:Exceptionwhen 异常名1 then 对应异常处理when 异常名2 then 对应异常处理......when others then 其他异常处理(必须放在最下面)。2.系统预定义异常:例如(NO_DATA_FOUND,TOO_MANY_ROWS)。3.自定义异常(有异常名的异常):在PL/S原创 2012-04-13 11:01:28 · 571 阅读 · 0 评论 -
PL/SQL中的数据类型
1.标量数据类型(基本数据类型):该数据类型的变量只有一个值,内部没有分量,其包括数字型,字符型,日期型,布尔型,例如(varchar(2),Number(p,s))。2.属性数据类型:a.%RowType:引用数据库表中的一行作为数据类型,Record类型(记录类型),可以使用"."来访问记录中的属性,例如:myemp scott.emp%RowType;该用户要有这张表的权限。b.原创 2012-04-13 11:31:49 · 773 阅读 · 0 评论 -
PL/SQL中使用嵌套表、变长数组(Varray)注意事项
1.当使用嵌套表元素时,必须首先使用其构造方法初始化嵌套表,用来固定它的长度。2.变长数组(Varray)和嵌套表一样,只不过变长数组的构造函数初始化长度有一定的范围限制,而嵌套表初始化长度时无范围,他们都可以作为表列的数据类型使用。3.由于嵌套表的元素值可以是稀疏的,所以删除的时候元素值别删掉,而元素位置还在,可以为该元素下标位置重新赋值,删除其中一个时用循环会报错是因为元素位置还在,但原创 2012-04-13 11:34:48 · 1194 阅读 · 2 评论 -
总结2
一、使用复合数据类型(属性类型)1.PL/SQL记录(处理单行单列数据):ReCord和RowType。2.PL/SQL集合(处理单列多行数据):索引表(PL/SQL表)、嵌套表(Nested Table)、变长数组(Varray)三种类型。3.PL/SQL记录表(处理多行多列数据):和索引表一样。4.集合方法:Exists、Count、Limit、First和Last、Prior原创 2012-04-14 22:14:36 · 557 阅读 · 0 评论 -
Oracle Minus(差集) 同步数据常用
Oracle Minus关键字,两张表对比差异取出补集,减少程序代码量原创 2015-09-01 11:03:41 · 2531 阅读 · 1 评论