Oracle数据库数据对象中最基本的是表和视图,其他还有约束、序列、函数、存储过程、包、触发器等。对数据库的操作可以基本归结为对数据对象的操作,理解和掌握Oracle数据库对象是学习Oracle的捷径。 表和视图 Oracle中表是数据存储的基本结构。ORACLE8引入了分区表和对象表,ORACLE8i引入了临时表,使表的功能更强大。
完整性约束 完整性约束用于增强数据的完整性,Oracle提供了5种完整性约束: Check NOT NULL Unique Primary Foreign key 完整性约束是一种规则,不占用任何数据库空间。完整性约束存在数据字典中,在执行SQL或PL/SQL期间使用。用户可以指明约束是启用的还是禁用的,当约束启用时,他
一 游标是什么 游标字面理解就是游动的光标。 用数据库语言来描述:游标是映射在结果集中一行数据上的位置实体,有了游标,用户就可以访问结果集中的任意一行数据了,将游标放置到某行后,即可对该行数据进行操作,例如提取当前行的数据等。 二 游标的分类 显式游标和隐式游标 显式游标的使用需要4步:
今天遇到了PL/SQL Dev的一个怪问题: 死活不能用PL/SQL Dev登录,用自己编写的程序、Sql Plus都可以。总是出现提示: You are not allowed to user PL/SQL Developer on this database. You do not have the System.Logon privilege in the PL/SQL Developer authorization table 可以用TOAD登陆,这就不明
1.先在oracle数据库中我们建立一个目录别名,用于将文件定位指针映射到文件系统: create DIRECTORY ''tmpdir'' AS ''/tmp''; tmpdir表示逻辑目录名,''/tmp''是实际目录。 注意该目录oracle应该有读权限 然后根据需要授权 GRANT READ ON DIRECTORY bfile_dir1 TO scott; 建立一个含有bfile字段的表
经测试和研究,有如下规则: 1.IE访问WEB的简单顺序为: IE<>WebServer<>文件系统 即IE向WebServer发送URL请求,该请求是通过某种编码做了encode的,WebServer接到请求后对其进行解码,然后再用解码后的地址到文件系统获取请求的内容返回到客户端的IE。 从以上顺序可以看出,如果要正常使用中文路
一 视图的概念 视图是原始数据库数据的一种变换,是查看表中数据的另外一种方式。可以将视图看成是一个移动的窗口,通过它可以看到感兴趣的数据。 视图是从一个或多个实际表中获得的,这些表的数据存放在数据库中。那些用于产生视图的表叫做该视图的基表。一个视图也可以从另一个视图中产生。 视图的定义存在数据库中,
/* 从DPS到EMIS,表dpsuser.gg_web_info_m */ /* 首先确保在EMIS数据库中已经建立了dpsuser和相应的表空间dpsdata */ /* 第一步,配置主体端 */ connect system/manager@dps grant connect,dba,resource to dpsuser; /* 创建复制管理员repadmin */ create user repadmin identified by repadmin; alte
什么是PL/SQL 结构化查询语言(Structured Query Language,简称SQL)是用来访问关系型数据库一种通用语言,它属于第四代语言(4GL),其执行特点是非过程化,即不用指明执行的具体方法和途径,而是简单的调用相应语句来直接取得结果即可。 例:delete from students where major=‘Nutrition’; 然而,对于有些复
二、查看当前用户每个表占用空间的大小: Select Segment_Name,Sum(bytes)/1024/1024 From User_Extents Group By Segment_Name 查看每个表空间占用空间的大小: Select Tablespace_Name,Sum(bytes)/1024/1024 From Dba_Segments Group By Tablespace_Name as4101> lsnrctl start as4101> svrmg
一、意义: 当我们使用一个数据库时,总希望数据库的内容是可靠的、正确的,但由于计算机系统的故障(硬件故障、网络故障、进程故障和系统故障)影响数据库系统的操作,影响数据库中数据的正确性,甚至破坏数据库,使数据库中全部或部分数据丢失。因此当发生上述故障后,希望能重新建立一个完整的数据库,该处理称为数据库
PL/SQL的全称是“Procedural Language extensions to the Structured Query Language”,用中文来说就是结构化查询语言的Oracle编程扩展,哈哈。Oracle引入PL/SQL来克服一些SQL的限制,加入了一些有特色的东西,供大家在Oracle数据库上更快捷、方便的建立应用。 我使用PL/SQL超过两年,从我一开始使用它进行程序开发就很
1.有for update类型的Cursor 定义Cursor时,加了for update,因为需要打开cursor后还要对这些数据进行修改和删除,但在修改和删除数据后在关闭cursor前就commit,就出现了下面的错误: ORA01002: 读取违反顺序 ORA06512: 在"JWGL.PCKGSTUDSLTCOURSE", line 62 ORA06512: 在line 2 Error: ORA06550: 第 2 行,
1、利用ORACLE NET MANAGER工具 1)打开 ORACLE NET MANAGER 2)增加"服务命名" 第一步 NET服务名:任意填写 第二步 通讯协议:如果连接远程机器上的ORACLE,选择TCP/IP(internet协议) 第三步 主机名:输入IP地址 端口号:一般缺省为1521 第四步 SID: 一般和数据库名字相同 第五步 测试
一个简单的存储过程,传递字符串变量作为参数,传递给过程中的in 子句;但似乎不起作用 。 代码如下CREATE OR REPLACE PROCEDURE WSREVSECT_5pSectNos varchar2,pRetCode OUT varchar2) ASnCount number;BEGINSELECT count(fksrev) into nCount FROM SREVSECTWHERE sectno IN (pSectNos ) /* as in ''abc'', ''xyz'', ''012
DBMS_PROFILER 包举例 下面是我提供的怎样使用配置的简单例子,运行配置文件来测试下面例程的性能. 例程用到的自定义脚本紧随其后. 1.创建过程. create or replace procedure am_perf_chk (pi_seq in number, pio_status in out nocopy varchar2) is l_dat date := sysda
一、背景介绍 结构化查询语言(Structured Query Language,简称SQL)是用来访问关系型数据库一种通用语言,属于第四代语言(4GL),其执行特点是非过程化,即不用指明执行的具体方法和途径,而是简单地调用相应语句来直接取得结果即可。显然,这种不关注任何实现细节的语言对于开发者来说有着极大的便利。然而,有些复杂
PL/SQL 3.3以上的版本中,UTL_FILE包允许用户通过PL/SQL读写操作系统文件。如下: declare file_handle UTL_FILE.FILE_TYPE; begin file_handle := UTL_FILE.FOPEN(''TMP'', ''文件名'', ''w'',[132767]); 四个参数:目录,文件名,打开方式,最大行数(默认为2000) UTL_FILE.PUTF(file_handle, ''写
本地数据库SID=T2 远程数据库SID=LIFE02 假设你的网络设定无误 1) vi local database tnsname.ora life02 = (description = (address = (protocol = tcp)(host = 192.168.1.1)(port = 1521)) (connect_data = (sid = life02)) ) 2)建立属于公开的(public)或者是专属的db li
因为在PL/SQL 中并没有数组. 这是偶查资料找的范例和自己写的范例来解释如何在PL/SQL 中使用数组. 也许很多人已知道, 不过就是让不知道的朋友们了解一下吧。 单维数组 DECLARE TYPE emp_ssn_array IS TABLE OF NUMBER INDEX BY BINARY_INTEGER; best_employees emp_ssn_array; worst_empl