Oracle

Oracle ROWID

ROWID是一个类似于rownum的伪列,用于定位数据库中一条记录的一个相对唯一地址值。通常情况下,该值在该行数据插入到数据库表时即被确定且唯一。而对于聚簇表,由于聚簇特性,不同表上的记录由于存储在相同的簇上,因此会拥有相同的ROWID。数据库的大多数操作都是通过ROWID来完成的,而且使用ROWID来进行单记录定位速度是最快的。下面将给出ROWID的相关描述。一、ROWID的特性组成及用途1、特性相对唯一性(聚簇表上不唯一)一旦确定,不可随意更改使用10

系统 2019-08-12 01:52:10 2335

Oracle

[置顶] Oracle 数据库表空间容量调整(表空间缩

--1、获取需要释放空间的表空间信息(包含oracledatabase自有表空间)--droptablesystem.tbs_detail;createtablesystem.tbs_detailasselecta.tablespace_name,a.bytes/1024/1024"Sum_MB",(a.bytes-b.bytes)/1024/1024"used_MB",b.bytes/1024/1024"free_MB",round(((a.bytes-

系统 2019-08-12 01:51:32 2335

SqlServer

SQL Server 索引和表体系结构(三)

原文:SQLServer索引和表体系结构(三)包含列索引概述包含列索引也是非聚集索引,索引结构跟聚集索引结构是一样,有一点不同的地方就是包含列索引的非键列只存储在叶子节点;包含列索引的列分为键列和非键列,所谓的非键列就是INCLUDE中包含的列,至少需要有一个键列,且键列和非键列不允许重复,非键列最多允许1023列(也就是表的最多列-1),由于索引键列(不包括非键)必须遵守现有索引大小的限制(最大键列数为16,总索引键大小为900字节)的要求所以引进了包含

系统 2019-08-12 01:33:32 2335

数据库相关

使用sql变量sql执行结果

1,获取返回表declare@sqlvarchar(1000)set@sql=N'select*fromStudent'--exec(@sql)createtable#S(#SStudentIDint--#S表结构和Student一致)insertinto#Sexec(@sql)--把返回的结果报错到临时表里select*from#S--对临时表操作droptable#S2,获取单个变量declare@sqlvarchar(1000),@varintset

系统 2019-08-12 01:32:56 2335

SqlServer

SQL Server中使用SQL语句取各分类中的前几条记录

本文非原创,仅根据网上查询结果按自己的表结构做了一下整理。因分辨不出哪个是原创,链接就不加了。建立表结构如下:CREATEtable[dbo].[tmp_Trans](IDintidentity,PO_NOvarchar(20)null,PO_Itemnovarchar(20)null,Qtynumeric(18,6)null,Trans_Datedatetimenull,Doc_novarchar(20)null)要求取相同PO_NO按Trans_Dat

系统 2019-08-12 01:32:41 2335

Oracle

Oracle专家调优秘密

在过去的十年中,Oracle已经成为世界上最专业的数据库之一。对于IT专家来说,就是要确保利用Oracle的强大特性来提高他们公司的生产力。最有效的方法之一是通过Oracle调优。它有大量的调整参数和技术来改进你的Oracle数据库的性能。Oracle调优是一个复杂的主题。关于调优可以写整整一本书,不过,为了改善Oracle数据库的性能,有一些基本的概念是每个OracleDBA都应该遵从的。在这篇简介中,我们将简要地介绍以下的Oracle主题:--外部调整

系统 2019-08-29 23:28:26 2334

数据库相关

获取有关 DML 触发器的信息

在SQLServer2005中,您可以确定一个表中触发器的类型、名称、所有者以及创建日期。还可以执行以下操作:获取触发器定义的有关信息,前提是触发器未在创建或修改时加密。可能需要了解触发器的定义,以了解它的Transact-SQL语句,或了解它如何影响所在的表。列出指定的触发器所使用的对象。该信息可在数据库中的影响触发器的对象发生更改或删除时用来标识这些对象。OBJECTPROPERTY函数通过ExecIsInsteadOfTrigger和ExecIsAf

系统 2019-08-12 01:34:03 2334

SqlServer

查看 SQL Server 2000 中数据表所占用的磁盘空间

同样的命题在SQLServer2005中,微软发布了一个报表,可以直接查看,但是这个报表不能用于SQLServer2000。于是我就写了下面这几句话,可以返回同样的结果。createtabletmp(namevarchar(50),rowsint,reservedvarchar(50),datavarchar(50),index_sizevarchar(50),unusedvarchar(50))insertintotmp(name,rows,reserv

系统 2019-08-12 01:32:34 2334

SqlServer

在SQL Server2005中使用 .NET程序集