数据库相关 - 军军小站|张军博客
Oracle

oracle 管道表函数2

由于上一篇关于管道表函数写的有些粗糙,追加一篇,方便大家理解。两个函数完成管道表函数数据的初始化,所以设计到一个函数中调用另一个函数获取含数据部分。一下是完整代码:1:创建row类型createorreplacetypesubwhiteblack_row_typeasobject(spidnumber,spnamevarchar(200),whitegroupcountnumber,whitelistcountnumber,whiteaddedcountn

系统 2019-08-12 09:30:25 2146

Oracle

Oracle客户端工具连接数据库服务器问题汇总

经常遇到PL/SQLDeveloper等依赖Client的工具无法连接Oracle数据库服务器的问题。至今也没完全理清楚,先发个帖总结一下目前的方法,后面会不断完善。方法一:重启Oracle服务器端相关服务,包括...TNSListener,所用的数据库实例的服务。可直接在Windows的“服务”中重启。或者(可使用的命令):lsnrctlstoplsnrctlstartlsnrctlreloadsqlplus/assysdba;startup;这个方法试

系统 2019-08-12 01:55:31 2146

Oracle

oracle pl/sql 中的触发器

oracle11g将触发器分为5种:1.DDL触发器:当在数据库中创建、修改、重命名、删除对象时触发。2.DML或行级别触发器:当在表中插入、更新或删除数据时触发;可用于在值被改变前(before)进行审核、检查、保存、和替代。3.复合触发器:既是语句级又是行级触发器。在需要同时使用语句级触发器和行级触发器时可以使用复合触发器。4.insteadof触发器:用于停止DML语句的执行并重定向DML语句,即视图触发器。5.系统或数据库事件触发器:用于跟踪系统事

系统 2019-08-12 01:54:55 2146

Oracle

oracle pl/sql中创建视图

模式:createorreplaceview视图名as...举例:createorreplaceviewvw_rightpeople(rightpeopletypename,rightpeopletype,rightpeopleid,organizetypeno,parentorganizeno,idno,idtype,rightpeoplename,rightpeopleproperty,chairman,resopertype,resstatus,bi

系统 2019-08-12 01:54:54 2146

Oracle

恢复服务里oracle启动实例项

服务里oracle启动实例项不见了:在CMD命令里oradim-new-sidtest(test是数据库实例名即oracle_sid)用connectsys/bitservice@testassysdba;链接上sqlplus,输入命令startup;服务里oracle启动实例项回来了!其实在CMD命令里输出oradim-new-sidtest,服务里oracle启动实例项已经显示,且显示为已启动,但是链接报错,重启服务后仍然报错。startup后,链接正

系统 2019-08-12 01:54:50 2146

Oracle

oracle自治事务

在触发器中操作触发此触发器的表,用pragmaautonomous_transaction选项。1、为何使用自治事务无法回滚的审计:一般情况下利用触发器禁止某些对表的更新等操作时,若记录日志,则触发器最后抛出异常时会造成日志回滚。利用自治事务可防止此点。避免变异表:即在触发器中操作触发此触发器的表在触发器中使用ddl写数据库:对数据库有写操作(insert、update、delete、create、alter、commit)的存储过程或函数是无法简单的用s

系统 2019-08-12 01:54:38 2146

数据库相关

EF+Code First+Database First+Model First,EF

EF开发流程:本人加班写的EF流程忘记保存了,以下博客也囊括了几部重要的操作,值得参考http://www.cnblogs.com/LittleFeiHu/archive/2012/02/20/2359324.htmlEF4.1包括CodeFirst和DbContextAPI。DbContextAPI为EF提供更多的工作方式:CodeFirst,DatabaseFirst和ModelFirst。使用DbContext构造函数1.CodeFirst约定连接n

系统 2019-08-12 01:53:40 2146

Oracle

Oracle程序包

程序包由两部分构成:规范(specification)和主体(body)。创建表createtablePEOPLE(IDNUMBERprimarykeynotnull,NAMENVARCHAR2(20)notnull,STATUSNVARCHAR2(3))insertintopeople(id,name,status)values(1,'福康','CLX');insertintopeople(id,name,status)values(2,'陆晓','ac

系统 2019-08-12 01:52:52 2146

Oracle

Oracle 11g新特性点评

Oracle11g新特性点评Oracle11g新特性简介Oracle11g现在已经正式推出。和她以前其他产品一样,新一代的oracle又将增加很多激动人心的新特性。IT168技术开发频道组织ITPUB数据库社区多位斑竹,发表系列技术点评文章。·点评Oracle11g新特性之分区·点评Oracle11g新特性之:数据压缩技术·点评Oracle11g新特性之统计信息收集·点评Oracle11g新特性之执行计划管理·点评Oracle11g新特性之自动内存管理·O

系统 2019-08-12 01:52:42 2146

Oracle

Oracle百问百答(一)

Oracle百问百答(一)01.如何查看oracle的版本信息?02.如何查看系统被锁的事务信息?03.怎么获取有哪些用户在使用数据库?04.数据表中的字段最大数是多少?表或视图中的最大列数为100005.怎样查得数据库的SID?selectnamefromv$database;,也可以直接查看init.ora文件06.如何查询表空间信息?07.如何统计两个表的记录总数?08.如何获取系统的当前日期,若天数大于15,显示1,否则显示0?09.dropuse

系统 2019-08-12 01:52:09 2146

Oracle

oracle 之 内存—鞭辟近里(二)

overviewofthepgapga是在操作系统的进程或是线程特定的一块内存区域,它不是共享的。因为pga是进程指定的,因此它不会在sga中分配。pga是一个内存堆,其中包含了被专用服务器或是共享服务器金曾锁需要的一些会话变量信息。服务器进程需要在pga中分配一些所需的内存结构。一个比喻为,pga是一个临时的文件管理员的工作区域,这个文件管理员就是服务进程,她是为客户服务工作的(clientprocess),然后文件管理员把工作区域分为很多的区域,然后来

系统 2019-08-12 01:52:08 2146

Oracle

oracle 存储过程的基本语法

1.基本结构CREATEORREPLACEPROCEDURE存储过程名字(参数1INNUMBER,参数2INNUMBER)IS变量1INTEGER:=0;变量2DATE;BEGINEND存储过程名字2.SELECTINTOSTATEMENT将select查询的结果存入到变量中,可以同时将多个列存储多个变量中,必须有一条记录,否则抛出异常(如果没有记录抛出NO_DATA_FOUND)例子:BEGINSELECTcol1,col2into变量1,变量2FROM

系统 2019-08-12 01:33:59 2146

Oracle

oracle之压缩表

oracle压缩数据的处理基于数据库块,本质是通过消除在数据库中的重复数据来实现空间节约。具体做法:比较数据块中包含的所有字段或记录,其中重复的数据只在位于数据块开始部分的记号表(SymbolTable)中存储一份,在其他行或字段出现同样的数据时,只记录一个指向记号表中相关数据的指针。性能分析:1、在批量装载或插入数据的过程中,由于压缩的同时进行,会引起CPU使用率提高,及导致装载时间明显增加2、对于普通的INSERT语句,由于没有执行压缩过程,性能几乎没

系统 2019-08-12 01:33:42 2146

Oracle

Oracle索引分析与比较

索引在各种关系型数据库系统中都是举足轻重的组成部分,其对于提高检索数据的速度起至关重要的作用。在Oracle中,索引基本分为以下几种:B*Tree索引,反向索引,降序索引,位图索引,函数索引,interMedia全文索引等。本文主要就前6种索引进行分析,由于interMedia全文索引涉及的内容可以单独写一篇文章,所以不在此对其做分析。首先给出各种索引的简要解释:b*treeindex:几乎所有的关系型数据库中都有b*tree类型索引,也是被最多使用的。其

系统 2019-08-29 23:09:09 2145

Oracle

Oracle中四种循环(GOTO、For、While、Loop)

ORACLE中的GOTO用法DECLARExnumber;BEGINx:=9;<>--循环点x:=x-1;DBMS_OUTPUT.PUT_LINE(X);IFX>0THENGOTOrepeat_loop;--当x的值小于9时,就goto到repeat_loopENDIF;END;/ORACLE中的FOR循环用法DECLAREXnumber;--声明变量BEGINx:=1;--给初值FORXINREVERSE1..10LOOP--r

系统 2019-08-12 01:55:28 2145