1 DEPOSIT Alters specified data fields on the current database page. 2 Description The DEPOSIT command is the default at RdbALTER command level. If no other command is present following the prompt, RdbALTER automatically parses the command line as a DEPOSIT command. The specification of the field to be altered must be followed by an equal sign (=) and a string of characters specifying the new value of the altered field. Do not use the DEPOSIT command immediately after a ROLLBACK command. The ROLLBACK command removes current page context. If you issue a DEPOSIT command immediately after a ROLLBACK command, a warning message is returned indicating that there is no current page. For this reason, you must specify your location again by using either the DISPLAY or the AREA . . . PAGE command immediately after a ROLLBACK command but before a DEPOSIT command. 2 Format (B)0qwqqqqqq>qqqqqwwq> STORAGE_AREA qqqqqqqwq> = value qq> mq> DEPOSIT qjtq> CHECKSUM qqqqqqqqqqqu tq> COUNT qqqqqqqqqqqqqqu tq> deposit-data qqqqqqqu tq> deposit-entry qqqqqqu tq> FREE_SPACE qqqqqqqqqu tq> deposit-index qqqqqqu tq> deposit-line qqqqqqqu tq> LOCKED_SPACE qqqqqqqu tq> NUMBER qqqqqqqqqqqqqu tq> SPACE range qqqqqqqqu tq> TIME_STAMP qqqqqqqqqu tq> NEXT_AIP qqqqqqqqqqqu mq> AIP_ENTRIES qqqqqqqqj (B)0deposit-data = qq> DATA qwqwqqqqqqqq>qqqqqqqwqwqqqqqqq>qqqqqqwqwq> offset qq> x t> /DECIMAL qqqqqu tq> /BYTE qqqqqu x x m> /HEXADECIMAL qj tq> /LONGWORD qu x x mq> /WORD qqqqqj x mqq> /ASCII qqqqqqqqqqqqqqqqqqqqqqqqqqj (B)0deposit-entry = qq> ENTRY qq> n qqqqwqqqqqqqqq>qqqqqqqqwq> tq> ABM qqqqqqqqqqqu tq> LOGICAL_AREA qqu tq> PHYSICAL_AREA qu tq> ALENGTH qqqqqqqu tq> ANAME qqqqqqqqqu tq> TSN qqqqqqqqqqqu tq> RECORD_LENGTH qu mq> INUSE qqqqqqqqqj (B)0deposit-index = qq> INDEX qq> n qqwq> OFFSET qqwq> mq> LENGTH qqj (B)0deposit-line = qqq> LINE qqqq> n qqqq> RECORD_TYPE qqqq> (B)0range = wq> * qqqqqqqqqqqqqqqqqqqqqqqqq>qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqwq> mq> lower-data-page-number qwqqqqqqqqqqqqqqqq>qqqqqqqqqqqqqqqqqwj mq> : qq> higher-data-page-number qj 2 Arguments 3 STORAGE_AREA Deposits a value for the 2-byte storage area identification. 3 CHECKSUM Deposits a value for the 4-byte page checksum field. 3 COUNT Deposits a value for the 2-byte field showing the number of line index entries. If this number is 1, the page contains only the SYSTEM record. 3 DATA_offset Deposits the number of bytes specified. If you do not specify the HEXADECIMAL or the DECIMAL qualifier, the default radix is assumed. See the help entry for the RADIX command The BYTE, LONGWORD, and WORD qualifiers cannot be used with the ASCII qualifier. 3 ENTRY Refers to an area inventory page (AIP) entry on the database page. The value specified for n must be a number between zero and the number of AIP entries. 3 ABM Deposits the new value on the first area bit map (ABM) page for the specified AIP entry. The ABM value is contained in a longword. 3 LOGICAL_AREA Deposits the new value for the number of the logical area for the AIP entry. The LOGICAL_AREA value is contained in a word. 3 PHYSICAL_AREA Deposits the new value for the number of the physical area for the AIP entry. The PHYSICAL_AREA value is contained in a word. 3 ALENGTH Deposits the new value for the length of the name of the logical area for the AIP entry. The ALENGTH value is contained in 1 byte. The name of the logical area can be from 1 to 31 bytes in length. 3 ANAME Deposits the new value for the name of the logical area for the AIP entry. The ANAME value is contained in a 31-character text field. 3 TSN Deposits a value for the last transaction sequence number (TSN) to enable snapshot (.snp) files for the logical area of the AIP entry. NOTE Beginning in Oracle Rdb V7.0, Oracle Rdb stores any transaction sequence number that is larger than a longword by using both the TSN field on the page and the page TSN base. Oracle Rdb calculates the actual TSN by applying a formula to these two values. Oracle Corporation recommends that you do not change a TSN value that is larger than a longword. When a TSN is larger than a longword, a nonzero number is stored in the page TSN base (the page tail). The following example shows the location of the page TSN and the page TSN base: 000A 00000003 0000 page 3, physical area 10 9D091204 0006 checksum = 9D091204 009A2C0F ED786D2E 000A time stamp = 23-MAY-1996 09:08:53.36 0000 03C4 0012 964 free bytes, 0 locked 0001 0016 1 line 0005 03E4 0018 line 0: offset 03E4, 5 bytes page TSN -----> 00000000 001C line 0: TSN 0 . . . 2001 03E4 line 0 (10:3:0) SYSTEM record 00 0001 03E6 1 byte in 0 sets/dynamic items 0000000000 03E9 padding '.....' FFFFFFFF 03EE snap page pointer -1 00000000 03F2 snap pointer TSN 0 0000 03F6 MBZ '..' 00000000 03F8 page sequence number 0 page TSN base -------> 0000 03FC page TSN base 0 0000 03FE MBZ '..' 3 RECORD_LENGTH Deposits a value for the length, in bytes, of the record size for an AIP entry. The RECORD_LENGTH value is contained in a word. 3 INUSE Deposits the new value for the AIP entry's in-use flag. The INUSE value is contained in 1 byte. 3 FREE_SPACE Deposits a value for the 2-byte field indicating how much free space remains on the page. NOTE In the next two parameters, the integers denoting INDEX and LINE are zero based. For example, INDEX 0 refers to the first index, and LINE 3 refers to the fourth line. References to INDEX and LINE are invalid if the current page is a space area management (SPAM) page, an AIP page, or an ABM page. 3 INDEX_n Deposits a value for the offset field or the length field for the line index indicated by n. For example, if you enter DEPOSIT INDEX 3 OFFSET, the offset address field from the fourth-line index is deposited. 3 LINE_n Deposits information for an individual storage segment. You can deposit a value for the RECORD_TYPE field. 3 LOCKED_SPACE Deposits a value for the 2-byte field indicating how much free space is allocated for exclusive use by a recovery unit. 3 NUMBER Deposits a value for the 4-byte page number field. 3 SPACE SPACE range Deposits a value for a specified range of SPAM entries; it is valid only if the current page is a SPAM page. (The SPACE and DATA parameters are the only ones that you can use in DISPLAY and DEPOSIT commands that access a SPAM page.) The range value can be an asterisk (*), referring to all entries, or a set of consecutive entries, which you describe as follows: lower-data-page-number[:higher-data-page-number] Each entry on a SPAM page consists of 2 bits, containing a value 0 through 3 that represents a fullness threshold. For example, if the nth SPAM entry contains a 2, it means that the nth data page in the interval has reached a percentage of fullness greater than the second threshold for the area, but less than or equal to the third threshold. 3 TIME_STAMP Deposits a value for the 8-byte time and date stamp field. 3 NEXT_AIP Deposits a value for the page number of the next area inventory page (AIP). 3 AIP_ENTRIES Deposits a value for the number of area inventory page (AIP) entries on the current area inventory page. 3 value Specifies the new value of the field you are altering. The value is deposited in the default radix unless you specify otherwise in one of these ways: o With a prior RADIX command. o By specifying HEXADECIMAL or DECIMAL in a DEPOSIT DATA command. o By enclosing ASCII data within quotation marks (" "). Timestamps must always be enclosed within quotation marks because they include punctuation characters. 2 Examples Example 1 The following example deposits a value of 1 for SPAM entries on pages 2 and 3 of the current storage area: RdbALTER> AREA 6 PAGE 1 RdbALTER> DISPLAY SPACE 2:3 0000000000000000000000000000000B 0016 page 2: threshold 3 page 3: threshold 2 pages 4-65: threshold 0 RdbALTER> DEPOSIT SPACE 2:3=1 RdbALTER> DISPLAY SPACE 2:3 00000000000000000000000000000005 0016 pages 2-3: threshold 1 pages 4-65: threshold 0 Example 2 The following example deposits data 032C with a length of 2 bytes into offset location 0012 (decimal 18): RdbALTER> DEPOSIT DATA/HEXADECIMAL/WORD 0012=032C Example 3 The following example deposits the new value of 0002 in the storage area identification field: RdbALTER> AREA 1 PAGE 1 RdbALTER> DISPLAY STORAGE_AREA 0001 0000 area 1 RdbALTER> DEPOSIT STORAGE_AREA=0002 RdbALTER> DISPLAY STORAGE_AREA 0002 0000 area 2 See the Oracle Rdb Guide to Database Maintenance for more examples of how to use the DEPOSIT command.