数据库编程
文章平均质量分 68
ArduousBonze
C/C++、Python/Perl/Shell、UNIX/LINUX、Oracle/Mysql/DB2
展开
-
Modify check constraint
Oracle的Null Not Null 约束是可以通过alter table modify来修改的,但是check constraint却不可以。比方说,将一个数值新加入到Check Constraint中,SQL> create table dlb_test (id number not null primary key, xp char(1));Table created.转载 2008-10-20 12:25:00 · 1741 阅读 · 0 评论 -
Oracle存储过程或者函数返回结果集
过程返回记录集: CREATE OR REPLACE PACKAGE pkg_test AS TYPE myrctype IS REF CURSOR; PROCEDURE get (p_id NUMBER, p_rc OUT myrctype); END pkg_test; / CREATE OR REPLACE PACKAGE BODY pkg_test AS转载 2008-10-19 13:33:00 · 1316 阅读 · 0 评论 -
Oracle数据库设计——定义约束 Check约束
看下面的例子:CREATE TABLE temp (age NUMBER(3));ALTER TABLE temp ADD CONSTRAINT ck_temp_age CHECK ((AGE>0) AND (AGE 现在我们能够插入Age表的集合是{1,2,…,125}或null,这和我们实际的现实生活是符合的。为限制Age字段取值范围不能为空,增加not null约转载 2008-10-18 13:19:00 · 1173 阅读 · 1 评论 -
使用REF CURSOR处理Oracle的结果集
Oracle提供REF CURSOR,通过该功能可以实现在程序间传递结果集的功能,利用REF CURSOR也可以实现BULK SQL,从而提高SQL性能。使用scott用户的emp表实现以下测试案例:SQL> desc emp Name Null? Type -------------------转载 2008-10-19 13:53:00 · 636 阅读 · 0 评论 -
Oracle 9i R2 EXPORT
Oracle 9i R2 EXPORT一:运行export的前提:1:执行catexp.sql脚本或者catalog.sql脚本;当数据库建立以后,运行catalog.sql脚本,这个脚本会做如下工作:# Creates the necessary export views in the data dictionary# Creates the EXP_FULL_DATABASE role# A转载 2008-09-27 13:36:00 · 1232 阅读 · 0 评论 -
Oracle主要概念汇总
一.文件系统和作用执行文件:Oracle系统的核心,数据文件只能被Oracle处理程序所识别,离开了可执行文件系统就无意义.存放可执行文件的空间一定要安全可靠.参数文件:启动实例时候配置Oracle数据库的一些基本信息,确定运行环境.参数文件应数据库不同而不同,命名方式为init.ora.控制文件:在Oracle服务器启动期间来标识物理文件和数据库结构的二进制文件.控制文件提供了建立新实例时候所转载 2008-09-27 13:34:00 · 1354 阅读 · 0 评论 -
TRACE()、ASSERT()、ASSERT_VALID()、Cobject::Dump()的作用
TRACE()Provides similar functionality to the printf function by sending aformatted string to a dump device such as a file or debug monitor. Likeprintf for C programs under MS-DOS, the TRACE mac转载 2008-10-16 22:38:00 · 1004 阅读 · 0 评论 -
Oracle Text 的体系结构及其使用
全文检索技术是智能信息管理的关键技术之一,OracleText作为Oracle9i的一个组件,提供了强大的全文检索功能,用Oracle9i做后台数据库,就可以充分利用其全文检索技术,构建复杂的大型文档管理系统。本文主要介绍了Oracle Text的体系结构及其使用。 Oracle一直致力于全文检索技术的研究,当Oracle9iRlease2发布之时,Oracle数据库的全文检索技转载 2008-09-21 12:28:00 · 851 阅读 · 0 评论 -
Oracle表空间结构
表空间类型 1. Permanent 永久性表空间用户需要保留的任何段或应用跨越一个会话或事务的数据都保留在Permanent表空间.如SYSTEM和SYSAUX表空间.从Oracle 10g开始,SYSTEM表空间默认为本地化管理.表空间第一个数据文件中的第一部分中的位图段管理所有的空间使用.SYSTEM表空间使用本地化管理,该数据库的其它表空转载 2008-09-24 22:28:00 · 1608 阅读 · 0 评论 -
Oracle体系结构与术语
ORACLE Architecture and Terminology This section will provide a basic understanding of ORACLE includingthe concepts and terminology of the ORACLE Server. It is important thatyou read throug转载 2008-09-21 12:24:00 · 906 阅读 · 0 评论 -
Oracle存储过程以数组做参数思考(还未验证)
type arraylist is table of number; cteate or replace prodcuce aa(arr in arraylist,len in number) as i number:=1; num number; begin for i转载 2008-09-22 12:25:00 · 821 阅读 · 0 评论 -
SQL Server数据导出到Oracle的方案
假设要将SQL Server中的Northwind数据库中的Products表导出到Oracle的Scott用户 首先需要有安装SQL Server企业版 1.打开工具: 开始->程序->Microsoft SQL Server->导入和导出数据 2.下一步,选择数据源 [数据源]选择“用于SQL Server的Microsoft OLE DB提供程序”转载 2008-06-30 14:59:00 · 2187 阅读 · 0 评论 -
Oracle's Wrap Utility
July 22, 2004 Oracles Wrap UtilityBy Steve CallanOne thing that Oracle andUPS have in common is that they both deal with wrapped packages. Why botherwith wrapping packages? One obvio转载 2008-09-18 09:12:00 · 771 阅读 · 0 评论 -
ORACLE SYNONYM
CREATE SYNONYMPURPOSE: To create a synonym. A synonym is an alternative name for a table, view, sequence, procedure, stored function, package, snapshot, or another synonym. SY转载 2008-09-17 17:05:00 · 1390 阅读 · 0 评论 -
Oracle后台进程的功能简单介绍
DBWR进程:该进程执行将缓冲区写入数据文件,是负责缓冲存储区管理的一个ORACLE后台进程。当缓冲区中的一缓冲区被修改,它被标志为“弄脏”,DBWR的主要任务是将“弄脏”的缓冲区写入磁盘,使缓冲区保持“干净”。由于缓冲存储区的缓冲区填入数据库或被用户进程弄脏,未用的缓冲区的数目减少。当未用的缓冲区下降到很少,以致用户进程要从磁盘读入块到内存存储区时无法找到未用的缓冲区时,DBWR将管理转载 2008-09-14 09:46:00 · 842 阅读 · 0 评论 -
Oracle 表相关DDL
Oracle表:数据定义语言(DDL)1、命名规则和约定:表名和列名的长度最多为30个字符表名和列名必须以字母打头表名或者列名中不允许有空格和*Oracle服务器的保留字也不能作为表名或列名2、数据类型:创建数据表时,要为表中的每一列分配一个数据类型。数据类型指定了将要存储在此列中的数据的类型。通过为一列提供一种数据类型,可以避免在此列中存储错误类型的数据Varc转载 2008-10-22 12:23:00 · 1395 阅读 · 2 评论 -
Visual Studio .NET,SQL Server 2000,Server Explorer
Matt Mannion 和 Jon RauschenbergerClarity Consulting Inc. 2002 年 3 月 适用于: Microsoft? SQL Server? 2000 Microsoft Visual Studio? .NET摘要:如何使用 Visual Studio .NET 工具创建数据库对象和 Transact-SQL转载 2008-10-06 16:31:00 · 3093 阅读 · 1 评论 -
使用Oracle9i的Flashback Query功能找回误删除的数据
一个闪回查询实验的例子:数据库版本:Oracle 9.2.0.4操作系统:linux AS4进行闪回查询必须设置自动回滚段管理,在init.ora设置参数UNDO_MANAGEMENT=AUTO,参数undo_retention=n,决定了能往前闪回的最大时间,值越大就需要越多Undo空间。# sqlplus test/testSQL*Plus: Release 9.2.转载 2008-10-18 13:20:00 · 585 阅读 · 0 评论 -
SQL*Plus的Copy命令
在数据表间复制数据是Oracle DBA经常面对的任务之一,Oracle为这一任务提供了多种解决方案,SQL*Plus Copy 命令便是其中之一。SQL*Plus Copy 命令通过SQL*Net在不同的表(同一服务器或是不同服务器)之间复制数据或移动数据。转载 2008-12-22 20:29:00 · 1452 阅读 · 0 评论 -
oracle 中的exception
1、异常的优点 如果没有异常,在程序中,应当检查每个命令的成功还是失败,如 BEGIN SELECT ... -- check for ’no data found’ error SELECT ... -- check for ’no data found’ error SELECT ... -- check for ’no data found’ error转载 2008-12-22 14:33:00 · 669 阅读 · 0 评论 -
OLTP与OLAP
OLTPOn_Line Transaction Processing联机事物处理系统(OLTP) 定义:On-Line Transaction Processing联机事务处理系统(OLTP)也称为面向交易的处理系统,其基本特征是顾客的原始数据可以立即传送到计算中心进行处理,并在很短的时间内给出处理结果。这样做的最大优点是可以即时地转载 2008-12-16 12:00:00 · 925 阅读 · 0 评论 -
Oracle共享服务器配置
9i 下的共享服务器 Shared Server(8i 中的多线程服务器 MTS )主要用在 OLTP 业务中,服务器进程每次处理业务只需很短的时间,大多在空闲状态,在这种情况下,可以用较少的资源,处理较多的用户请求。 共享服务器的配置1.设置 DISPATCHERS 参数: 在 pfile 中添加:*.DISPATCHERS=(PROTOCOL=TCP)(SERVICE=SKY转载 2008-12-16 13:06:00 · 1325 阅读 · 0 评论 -
How to partition a non-partitioned table
You can partition a non-partitioned table three different ways:A) export/import methodB) Insert with a subquery method C) Partition exchange methodEither of these 3 methods will create a partition转载 2008-12-12 12:22:00 · 624 阅读 · 0 评论 -
VC下利用Pro*C开发Oracle接口
摘要 本文介绍了使用Pro*C/C++在Visual C++环境下开发Oracle数据库接口程序的方法。 关键词 程序设计,数据库接口程序,Oracle 概述 在Visual C++下开发Oracle库接口主要有两种方法。一种方法是利用VisualC++提供的多种数据库访问技术,如开放数据库连接ODBC、数据存取对象DAO、对象连接和嵌入数据库OLEDB和ActiveX数据对转载 2009-02-02 16:36:00 · 760 阅读 · 0 评论 -
在跨平台的C++程序中使用OTL来操作不同的数据库
本文主要介绍了OTL和怎样在C++程序中使用OTL操作数据库。OTL介绍:OTL 是 Oracle, Odbc and DB2-CLI Template Library 的缩写,是一个C++编译中操控关系数据库的模板库,它目前几乎支持所有的当前各种主流数据库,例如Oracle, MS SQL Server, Sybase, Informix, MySQL, DB2, Interbase转载 2009-02-01 15:08:00 · 1149 阅读 · 0 评论 -
Oracle 空闲列表管理机制与pctfree和pctused参数
Oracle中有空闲列表的概念.空闲列表中存储的是可供插入新行的块信息所以新的行数据只会插入到那些存在于空闲列表中的块. 空闲列表的管理机制与建表时pctfree和pctused参数两个参数有紧密关系. 当一个块第一次开辟的时候,当然是在空闲列表中的.随着不断地插入行数据,当使用率达到或者超过 1-PCTFREE%的时候,该块从空闲列表中移出.所以这时候新的行数据不可能再存放到转载 2008-11-26 10:18:00 · 835 阅读 · 0 评论 -
系统权限UNLIMITED TABLESPACE为什么如此特殊?
1、系统权限UNLIMITED TABLESPACE 不能被授予role,可以被授予用户!2、UNLIMITED TABLESPACE 没有被包括在resource role中,但是UNLIMITED TABLESPACE 随着resource的授出而被授予用户的。3、UNLIMITED TABLESPACE 不能伴随着resource被授予role而授予用户。1、测试1系统权限U转载 2008-11-03 16:38:00 · 3705 阅读 · 0 评论 -
oracle触发器和常用内置程序包
-触发器和常用内置程序包 --author:shine --一.触发器: --1.触发器组成:由触发器语句,触发器限制,触发器操作三部分组成。 --exp:1.1.1 create or replace trigger tri_test1 before update or insert on emp for each row --以上是触发器语句(即:什么时机触发) when (new.sal转载 2008-10-13 13:56:00 · 816 阅读 · 0 评论 -
Oracle异常
如果没有异常,在程序中,应当检查每个命令的成功还是失败,使用异常,可以方便处理错误,而且异常处理程序与正常的事务逻辑分开,提高了可读性。 1、异常的优点 2、异常的分类 有两种类型的异常,一种为内部异常,一种为用户自定义异常,内部异常是执行期间返回到PL/SQL块的。用户自定义异常由开发者显示定义,在PL/SQL块中传递信息以控制对于应用的错误处理。 为每个ORACLE错误都有一转载 2008-10-14 09:02:00 · 1323 阅读 · 0 评论 -
Oracle备份与恢复案例
Oracle备份与恢复案例v/:* {behavior:url(#default#VML);}o/:* {behavior:url(#default#VML);}w/:* {behavior:url(#default#VML);}.shape {behavior:url(#default#VML);}st1/:*{behavior:url(#ieooui) }<!转载 2008-10-11 18:50:00 · 794 阅读 · 0 评论 -
初识ORACLE的审计功能
顺着这样的思路去学习。1、审计可以达到怎样的效果?我用来做什么?2、任何概念都该有分类的吧,审计也不例外?3、如何启用审计?数据库一级。4、如何设定我所需要的审计?针对某个特定的监视目标了。5、如何看审计的结果?6、论坛上一些常见的问题,自己认为比较难理解的问题。初识ORACLE的审计功能顺着这样的思路去学习。1、审计可以达到怎样的效果?我要来做什么?2、有分类吗?3、如何启用审计?数据库一级。转载 2008-10-13 13:31:00 · 670 阅读 · 0 评论 -
理解和使用Oracle 日志分析工具-LogMiner
Oracle LogMiner 是Oracle公司从产品8i以后提供的一个实际非常有用的分析工具,使用该工具可以轻松获得Oracle 重作日志文件(归档日志文件)中的具体内容,特别是,该工具可以分析出所有对于数据库操作的DML(insert、update、delete等)语句,另外还可分析得到一些必要的回滚SQL语句。该工具特别适用于调试、审计或者回退某个特定的事务。 LogMiner分转载 2008-10-14 09:05:00 · 917 阅读 · 0 评论 -
Oracle 口令文件
在数据库没有启动之前,数据库内建用户是无法通过数据库来验证身份的。口令文件中存放sysdba/sysoper用户的用户名及口令,允许用户通过口令文件验证,在数据库未启动之前登陆,从而启动数据库。如果没有口令文件,在数据库未启动之前就只能通过操作系统认证.使用Rman,很多时候需要在nomount,mount等状态对数据库进行处理所以通常要求sysdba权限如果属于本地DBA组,可以通过操作系统认转载 2008-10-07 08:45:00 · 1383 阅读 · 1 评论 -
oracle select ... for update
select ... for update nowait其中nowait是可选项。此子句的意思就像他的字面意思,也就是说现在执行的select操作是为了本事务中的后续的update服务的。这时候系统会试图锁定查询出来的记录,不允许其他事务修改它们。如果指定了nowait,则系统如果无法锁定记录,就会直接报错,并不会等待其他占有资源的事务释放资源。我这有一些我做的测试结果事务A转载 2008-09-12 15:07:00 · 3402 阅读 · 2 评论 -
oracle内置程序包
Oracle 一些内置的程序包STANDARD和DBMS_STANDARD 定义和扩展PL/SQL语言环境DBMS_LOG 提供对 Oracle LOB数据类型进行操作的功能DBMS_LOCK 用户定义的锁DBMS_OUTPUT 处理PL/SQL 块和子程序输出调试信息DBMS_SESSION 提供ALTER SESSION 命令的PL/SQL等效功能DBMS_ROWID转载 2008-09-15 11:36:00 · 1196 阅读 · 0 评论 -
Oracle开发人员JAVA存储过程
利用Java存储过程沟通SQL、XML、Java、J2EE和Web服务。 存储过程(stored procedure)允许将运行于数据库层中的持久性逻辑与运行于中间层中的商务逻辑有效地分离开来。这种分离可以降低整个应用程序的复杂性,并提供其重用性、安全性、性能和可伸缩性。 但是,妨碍存储过程广泛采用的一个主要障碍是不同数据库厂商使用各种专有的、且依赖于数据库的实现语言。使用基于J转载 2008-09-10 13:40:00 · 1066 阅读 · 0 评论 -
sql*plus 中输出格式控制技巧
sql*plus是我们常用的工具,大家也许对此工具感到一个困惑的地方就是对其输出的格式化了。我总结整理了一下常用的格式化输出操作及一些简单用例,发给大家,以备使用时参考: 1. COL命令: 主要格式化列的显示形式。 该命令有许多选项,具体如下: COL[UMN] [{ column|expr} [ option ...]] Option选项可以是如下的子句: ALI[AS]转载 2008-08-05 14:20:00 · 960 阅读 · 0 评论 -
在存储过程中调用外部的动态连接库(MS SQL Server7.0/2000环境)
问题的提出: 一般我们要根据数据库的纪录变化时,进行某种操作。我们习惯的操作方式是在程序中不停的查询表,判断是否有新纪录。这样耗费的资源就很高,如何提高这种效 率,我想在表中创建触发器,在触发器中调用外部动态连接库通过消息或事件通知应用程序就可实现。而master的存储过程中最好能调用外部的动态连接库, 我们在触发器中调用master的存原创 2008-05-26 12:25:00 · 1615 阅读 · 0 评论 -
几个SQL语法例子
SELECT DISTINCT store_name FROM Store_Information;SELECT * FROM Store_Information WHERE store_name IN (Los Angeles, San Diego);几个函数: * AVG (平均) * COUNT (计数) * MAX (最大值) * MIN (最小值)转载 2008-08-01 15:25:00 · 841 阅读 · 0 评论 -
ORA-03113错误分析
前言每一个DBA在进行数据库管理的过程中不可避免的要遇到形形色色的错误(ORA-xxxx).有些错误由于频繁出现、原因复杂而被DBA们戏称之为"经典的错误".其中ORA-3113 "end of fileon communication channel" 就是这样的一个.我们可以简单的把这个错误理解为Oracle客户端进程和数据库后台进程连 接中断.不过,导致这个错误的原因实际上有很多种,原创 2008-05-15 11:02:00 · 1002 阅读 · 0 评论