vBulletin Search Engine Optimization
| |||||||
| Register | FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
| ||||
| From the manual (Admin Guide, chapter 38) Rowid in Fragmented Tables Unlike rows in a nonfragmented table, the database server does not assign a rowid to rows in fragmented tables. If you wish to access data by rowid, you must explicitly create a rowid column as described in the Performance Guide for Informix Dynamic Server. If user applications attempt to reference a rowid in a fragmented table that does not contain a rowid that you explicitly created, the database server returns an appropriate error code to the application. Accessing Data Using Rowid in Fragmented Tables From the viewpoint of an application, the functionality of a rowid column in a fragmented table is identical to the rowid of a nonfragmented table. However, unlike the rowid of a nonfragmented table, the database server uses an index to map the rowid to a physical location. When the database server accesses a row in a fragmented table using the rowid column, it uses this index to look up the physical address of the row before it attempts to access the row. For a nonfragmented table, the database server uses direct physical access without having to do an index lookup. As a consequence, accessing a row in a fragmented table using rowid takes slightly longer than accessing a row using rowid in a nonfragmented table. You should also expect a small performance impact on the processing of inserts and deletes due to the cost of maintaining the rowid index for fragmented tables. From the Performance Guide: In a fragmented table, the row ID is no longer a unique nonchanging pointer to the row on a disk. The database serve now uses the combination of fragment ID and rowID internally, inside an index, to point to the row. These two fields are unique but can change over the life of the row. An application cannot access the fragment ID; therefore, Informix recommends that you use primary keys to access a specific row in a fragmented table. For more information, refer to the Informix Guide to Database Design and Implementation. -----Original Message----- From: owner-informix-list@iiug.org [mailto On Behalf Of Colin Dawson Sent: 31 August 2005 05:56 AM To: informix-list@iiug.org Subject: Re: ROWID functionality Unless you use the WITH ROWIDS clause when creating the fragmented table..... Regards Colin There are 10 types of people in the world, those that understand binary and those that don't >From: david@smooth1.co.uk >Reply-To: david@smooth1.co.uk >To: informix-list@iiug.org >Subject: Re: ROWID functionality >Date: 30 Aug 2005 12:19:34 -0700 > >rowid is not unique for fragmented tables. > >but then maybe the logical log record will include the fragment id for >fragmented tables? sending to informix-list sending to informix-list |