Oracle数据内部的逻辑存储Oracle存储数据的最小粒度(finestlevelofgranularity)被称为数据块(datablock)(也叫做逻辑块(logicalblock),Oracle块(Oracleblock)或页(page))。一个数据块对应于磁盘上数个字节(byte)的物理数据库空间。处于数据块之上的逻辑数据库空间是数据扩展(extent)。数据扩展是为存储数据而分配的一组连续的数据块。位于数据扩展之上的逻辑数据库存储结构是段(se
系统 2019-08-12 09:30:13 2096
没有给赋值,也没有默认值时为nullORACLE允许任何一种数据类型的字段为空,除了以下两种情况:1、主键字段(primarykey),2、定义时已经加了NOTNULL限制条件的字段说明:1、等价于没有任何值、是未知数(未赋值,且没有默认值)。2、NULL与0、空字符串、空格都不同。3、对空值做加、减、乘、除等运算操作,结果仍为空。4、NULL的处理使用NVL函数。5、比较时使用关键字用“isnull”和“isnotnull”。6、空值不能被索引,所以查询
系统 2019-08-12 01:55:25 2096
--==========================================--使用OEM,SQL*Plus,iSQL*Plus管理Oracle实例--==========================================/*一、管理组件Oracle10g数据库管理包含三个组件,本文主要介绍DatabaseControl,SQL*Plus及iSQL*PlusDatabaseinstance(数据库实例)-->系统使用的后台进程Li
系统 2019-08-12 01:54:26 2094
在Oracle里面,我通过图形界面创建dblink,老是不成功,报错。问了同事后,同事建议我用sql创建,于是复制了如下sqlcreatedatabaselinkdblink_testconnectto登录用户名identifiedby登录密码using'(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=19.19.19.19)(PORT=1521)))(CONNECT_DATA=(SERVIC
系统 2019-08-12 01:54:29 2092
普通排序SQL是这样的:SELECTNAMEFROMTABLEORDERBYNAME;这时候我们需要按照自己定义的NAME的排序规则进行排序,如按照某个字典ARRAY进行排序,就需要用个临时表来完成如建立表:C_SORT_TcreatetableC_SORT_T(SORT_IDNUMBER(10),SORT_NAMEVARCHAR2(20),SORT_SEQNUMBER(10))然后把原有的SQL联合排序表进行查询,然后用SORT_SEQ排序就可以了。如果
系统 2019-08-12 01:51:28 2091
长期以来,我一直用的是MSSQLServer/Access数据库,通过.NET访问MS自家的东西几乎没碰到过什么麻烦。最近项目中要用Oracle作为数据库,学习研究了一些.NET访问Oracle的东西,发现问题倒真的不少。1。System.Data.OracleClient和System.Data.OleDb命名空间虽然通过这两个命名空间的类都可以访问Oracle数据库,但和SQLServer类似的(System.Data.SqlClient命名空间的类效
系统 2019-08-12 01:32:20 2090
数据库事务(ACID)中的I指隔离性(isolation):未完成的(也就是未提交的)事务必须不可视。在某个事务进行期间,只有执行该事务的一个会话能看到所做的变化。oracle是通过使用还原段来实现隔离性的。还原段(undo)的目的:(1)事务恢复;(2)事务回滚;(3)读一致性代码SQL>selectname,valuefromv$parameterwherenamelike'%undo%';NAMEVALUE----------------------
系统 2019-08-12 01:53:46 2089
--==============================================--Oracle闪回特性(FLASHBACKDROP&RECYCLEBIN)--==============================================FLASHBACKDROP特性允许在不丢失任何数据库的情况下将指定的表恢复至其被删除的时间点,并保持数据库为当前状态。闪回删除并不是真正的删除表,而是把该表重命名并放入回收站,类似于Windo
系统 2019-08-12 01:55:31 2088
exists先从外层查询中取第一个元组,然后和内层查询中相关的属性值,处理内层查询,若内层where子句为真,则外层的这个元组放入到结果集中。in先执行内层查询,将结果存放在临时表中,然后执行外层查询。in不对null进行处理,见下图,没有返回结果。总结:内层查询得出的结果集记录较少,外层查询中得到的结果集较大且有索引,适合用in。外层查询得出的结果集记录较少,内层查询中得表较大其有索引,适合用exists。外层查询得出的结果集记录较多,内层查询中得到的结
系统 2019-08-12 01:55:25 2082
插入数据库CLOBtempClob=null;try{Connectionconn=getConnection();PreparedStatement==conn.prepareStatement("UPDATEPROGRAM_HISTORYSETDETAILS=?WHEREID=12");tempClob=CLOB.createTemporary(conn,true,CLOB.DURATION_SESSION);tempClob.open(CLOB.MO
系统 2019-08-12 01:54:09 2082
1:G:\Oracle\product\10.1.0\Client_1\NETWORK\ADMIN目录下有个tnsname.ora文件,内容如下:CMSTAR=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=172.18.13.200)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=cmstar)))其中:CMSTAR为数据库名,HOST为IP地址,所以可以仿
系统 2019-08-12 01:32:59 2082
模式:createsequence序列号名minvalue最小值maxvalue最大值startwith目前值incrementby步长nocache;举例:--CreatesequencecreatesequenceSEQ_ALLACTIVESEARCHINFOminvalue1maxvalue999999999999999999999999999startwith15incrementby1nocache;应用:selectseq_allactives
系统 2019-08-12 01:54:54 2081
1.查询等待事件的几个动态视图v$session,v$session_wait,$vsession_wait_histroy,v$event_name,v$session_longops:记录了长时间(运行时间>6S)运行的事务,可能很多是全表扫描操作v$segment_statistics:找出物理读取显著的索引或者是表段2.常见的几个等待事件1)。dbfilesequentialread(数据文件连续读取):可能表示在多表连接中,表的连接顺序存在问题;
系统 2019-08-12 01:51:45 2081
如果要插入固定有序的数据,用一个SQL可以用下面的方法selectrownum-1fromdualconnectbyrownum<21但只支持9I或者更高版本,如果是8I就要建立个临时表了:altertableCMES.C_PARAMETER_NUM_Tdropprimarykeycascade;droptableCMES.C_PARAMETER_NUM_Tcascadeconstraints;createtableCMES.C_PARAMETER_NUM
系统 2019-08-12 01:51:31 2081
偶然需要了解,学习了这篇文章,转载记录一下自:http://blog.csdn.net/jxzkin/article/details/79496291.创建测试数据[html]viewplaincopyCREATETABLECC(StudentNVARCHAR2(2),CourseNVARCHAR2(2),ScoreINT);[html]viewplaincopyINSERTintoCCselectN'张三',N'语文',78fromdualunional
系统 2019-08-12 01:54:42 2080